From 81c57e2c9d99ced72bcc6b9633109dff73a04526 Mon Sep 17 00:00:00 2001 From: Brandon Casey Date: Mon, 23 Sep 2013 11:49:15 -0700 Subject: [PATCH] contrib/git-credential-gnome-keyring.c: report failure to store password Produce an error message when we fail to store a password to the keyring. Signed-off-by: Brandon Casey Signed-off-by: Junio C Hamano --- .../credential/gnome-keyring/git-credential-gnome-keyring.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/contrib/credential/gnome-keyring/git-credential-gnome-keyring.c b/contrib/credential/gnome-keyring/git-credential-gnome-keyring.c index b70bd53959..447e9aa551 100644 --- a/contrib/credential/gnome-keyring/git-credential-gnome-keyring.c +++ b/contrib/credential/gnome-keyring/git-credential-gnome-keyring.c @@ -125,6 +125,7 @@ static int keyring_store(struct credential *c) { guint32 item_id; char *object = NULL; + GnomeKeyringResult result; /* * Sanity check that what we are storing is actually sensible. @@ -139,7 +140,7 @@ static int keyring_store(struct credential *c) object = keyring_object(c); - gnome_keyring_set_network_password_sync( + result = gnome_keyring_set_network_password_sync( GNOME_KEYRING_DEFAULT, c->username, NULL /* domain */, @@ -152,6 +153,13 @@ static int keyring_store(struct credential *c) &item_id); g_free(object); + + if (result != GNOME_KEYRING_RESULT_OK && + result != GNOME_KEYRING_RESULT_CANCELLED) { + g_critical("%s", gnome_keyring_result_to_message(result)); + return EXIT_FAILURE; + } + return EXIT_SUCCESS; } -- 2.11.4.GIT