[libgnome-keyring] Fix up get/set default keyring functionality.



commit 023dc877e55b411a6020c71ad6094f8abff1ae17
Author: Stef Walter <stef memberwebs com>
Date:   Thu Dec 10 23:32:26 2009 +0000

    Fix up get/set default keyring functionality.

 library/gnome-keyring.c |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)
---
diff --git a/library/gnome-keyring.c b/library/gnome-keyring.c
index 3050011..1f756fd 100644
--- a/library/gnome-keyring.c
+++ b/library/gnome-keyring.c
@@ -619,10 +619,14 @@ get_default_keyring_reply (GkrOperation *op, DBusMessage *reply, gpointer user_d
 		return;
 	}
 
-	name = gkr_decode_keyring_name (path);
-	if (name == NULL) {
-		gkr_operation_complete (op, decode_invalid_response (reply));
-		return;
+	if (g_str_equal (path, "/")) {
+		name = NULL;
+	} else {
+		name = gkr_decode_keyring_name (path);
+		if (name == NULL) {
+			gkr_operation_complete (op, decode_invalid_response (reply));
+			return;
+		}
 	}
 
 	cb = gkr_operation_pop (op);
@@ -662,7 +666,7 @@ gnome_keyring_get_default_keyring (GnomeKeyringOperationGetStringCallback  callb
 	string = "default";
 	dbus_message_append_args (req, DBUS_TYPE_STRING, &string, DBUS_TYPE_INVALID);
 
-	op = gkr_operation_new (callback, GKR_CALLBACK_RES, data, destroy_data);
+	op = gkr_operation_new (callback, GKR_CALLBACK_RES_STRING, data, destroy_data);
 	gkr_operation_push (op, get_default_keyring_reply, GKR_CALLBACK_OP_MSG, NULL, NULL);
 	gkr_operation_request (op, req);
 	gkr_operation_unref (op);
@@ -2419,6 +2423,7 @@ gnome_keyring_item_create (const char                          *keyring,
 
 	op = gkr_operation_new (callback, GKR_CALLBACK_RES, data, destroy_data);
 	gkr_operation_push (op, item_create_1_reply, GKR_CALLBACK_OP_MSG, args, item_create_free);
+	gkr_operation_set_keyring_hint (op);
 	gkr_operation_request (op, req);
 	gkr_operation_unref (op);
 	dbus_message_unref (req);



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