aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/pdm-dialog.c36
1 files changed, 15 insertions, 21 deletions
diff --git a/src/pdm-dialog.c b/src/pdm-dialog.c
index c4c28b1cf..697773cd0 100644
--- a/src/pdm-dialog.c
+++ b/src/pdm-dialog.c
@@ -1270,32 +1270,26 @@ pdm_dialog_passwords_construct (PdmActionInfo *info)
}
static void
-pdm_dialog_fill_passwords_list_async_cb (GnomeKeyringResult result,
- GList *list,
- gpointer data)
+pdm_dialog_fill_passwords_list (PdmActionInfo *info)
{
- GList *l;
- PdmActionInfo *info = (PdmActionInfo *)data;
+ GList *list, *l;
+ GnomeKeyringResult result;
- if (result != GNOME_KEYRING_RESULT_OK)
- return;
+ result = gnome_keyring_list_item_ids_sync (GNOME_KEYRING_DEFAULT, &list);
- for (l = list; l != NULL; l = l->next)
- info->add (info, l->data);
+ if (result == GNOME_KEYRING_RESULT_OK)
+ {
+ for (l = list; l != NULL; l = l->next)
+ info->add (info, l->data);
+ g_list_free (list);
+ }
- info->filled = TRUE;
- gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (info->model),
- COL_PASSWORDS_HOST,
- GTK_SORT_ASCENDING);
-}
+ /* Let's get notified when the list changes */
+ info->filled = TRUE;
-static void
-pdm_dialog_fill_passwords_list (PdmActionInfo *info)
-{
- gnome_keyring_list_item_ids (GNOME_KEYRING_DEFAULT,
- pdm_dialog_fill_passwords_list_async_cb,
- info,
- NULL);
+ gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (info->model),
+ COL_PASSWORDS_HOST,
+ GTK_SORT_ASCENDING);
}
static void