[seahorse/refactor] Fix double free of list of selected items



commit 13122385b16d2981ac0e514de6973b7f3f3c1a74
Author: Stef Walter <stefw collabora co uk>
Date:   Thu Oct 20 13:56:12 2011 +0200

    Fix double free of list of selected items

 gkr/seahorse-gkr-actions.c |    6 ------
 pgp/seahorse-pgp-actions.c |    2 ++
 ssh/seahorse-ssh-actions.c |    1 -
 3 files changed, 2 insertions(+), 7 deletions(-)
---
diff --git a/gkr/seahorse-gkr-actions.c b/gkr/seahorse-gkr-actions.c
index 091febe..bfc18fa 100644
--- a/gkr/seahorse-gkr-actions.c
+++ b/gkr/seahorse-gkr-actions.c
@@ -189,7 +189,6 @@ on_keyring_unlock (GtkAction *action,
 		gnome_keyring_unlock (seahorse_gkr_keyring_get_name (l->data), NULL,
 		                      on_keyring_unlock_done, g_object_ref (parent), g_object_unref);
 	}
-	g_list_free (keys);
 }
 
 static void
@@ -221,7 +220,6 @@ on_keyring_lock (GtkAction *action,
 		gnome_keyring_lock (seahorse_gkr_keyring_get_name (l->data),
 		                    on_keyring_lock_done, g_object_ref (parent), g_object_unref);
 	}
-	g_list_free (keyrings);
 }
 
 static void
@@ -283,8 +281,6 @@ on_keyring_password (GtkAction *action,
 		gnome_keyring_change_password (seahorse_gkr_keyring_get_name (l->data), NULL, NULL,
 		                               on_change_password_done, g_object_ref (window), g_object_unref);
 	}
-
-	g_list_free (keys);
 }
 
 
@@ -340,7 +336,6 @@ on_keyring_delete (GtkAction* action,
 	}
 
 	g_free (prompt);
-	g_list_free (objects);
 }
 
 
@@ -529,7 +524,6 @@ on_delete_passwords (GtkAction *action,
 	}
 
 	g_free (prompt);
-	g_list_free (objects);
 }
 
 static const GtkActionEntry ITEM_ACTIONS[] = {
diff --git a/pgp/seahorse-pgp-actions.c b/pgp/seahorse-pgp-actions.c
index ad40639..403f0b1 100644
--- a/pgp/seahorse-pgp-actions.c
+++ b/pgp/seahorse-pgp-actions.c
@@ -88,6 +88,8 @@ on_remote_sync (GtkAction* action,
 	if (objects == NULL) {
 		keyring = seahorse_pgp_backend_get_default_keyring (NULL);
 		objects = gcr_collection_get_objects (GCR_COLLECTION (keyring));
+	} else {
+		objects = g_list_copy (objects);
 	}
 
 	seahorse_keyserver_sync_show (objects, seahorse_action_get_window (action));
diff --git a/ssh/seahorse-ssh-actions.c b/ssh/seahorse-ssh-actions.c
index eddaa3b..ddb47fd 100644
--- a/ssh/seahorse-ssh-actions.c
+++ b/ssh/seahorse-ssh-actions.c
@@ -79,7 +79,6 @@ on_ssh_upload (GtkAction* action,
 		return;
 
 	seahorse_ssh_upload_prompt (ssh_keys, seahorse_action_get_window (action));
-	g_list_free (ssh_keys);
 }
 
 static void



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]