From: Brandon Casey Date: Mon, 23 Sep 2013 18:49:15 +0000 (-0700) Subject: contrib/git-credential-gnome-keyring.c: report failure to store password X-Git-Tag: v1.8.5-rc0~28^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=81c57e2c9d99ced72bcc6b9633109dff73a04526;p=thirdparty%2Fgit.git 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 --- 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; }