From a89fd17b8e6395b93463b98e35b00c7ce035a57b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Wed, 18 Sep 2013 19:21:50 +0200 Subject: [PATCH] shell: Make KeyringPrompt.cancel() callable from signal handlers gcr/gnome-keyring don't handle the case where prompt_password_async()/ prompt_confirm_async() return their result from within the function very well (or rather: break badly). Calling gcr_prompt_close() instead is safe, but to avoid these kind of errors in the future, modify shell_keyring_prompt_cancel() to work as expected in this case. https://bugzilla.gnome.org/show_bug.cgi?id=708187 --- src/shell-keyring-prompt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/shell-keyring-prompt.c b/src/shell-keyring-prompt.c index bafcb90b4..2e9bc67eb 100644 --- a/src/shell-keyring-prompt.c +++ b/src/shell-keyring-prompt.c @@ -771,6 +771,6 @@ shell_keyring_prompt_cancel (ShellKeyringPrompt *self) self->async_result = NULL; self->mode = PROMPTING_NONE; - g_simple_async_result_complete (res); + g_simple_async_result_complete_in_idle (res); g_object_unref (res); }