From da16135f08ff62fde4b8c20a043d17b6a4997205 Mon Sep 17 00:00:00 2001 From: Chenthill Palanisamy Date: Mon, 9 Nov 2009 12:40:34 +0530 Subject: Bug #557613 - evolution crashed with SIGSEGV in try_open_e_book_cb() --- mail/em-utils.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/mail/em-utils.c b/mail/em-utils.c index 0eab5f6fac..4f264955bd 100644 --- a/mail/em-utils.c +++ b/mail/em-utils.c @@ -1665,9 +1665,10 @@ try_open_e_book (EBook *book, gboolean only_if_exists, GError **error) if (canceled) { g_clear_error (error); g_set_error (error, E_BOOK_ERROR, E_BOOK_ERROR_CANCELLED, "Operation has been canceled."); - e_book_cancel_async_op (book, NULL); - /* it had been canceled, the above callback may not be called, thus setting flag here */ - e_flag_set (flag); + /* if the operation is cancelled sucessfully set the flag else wait. file, groupwise,.. backend's operations + are not cancellable */ + if (e_book_cancel_async_op (book, NULL)) + e_flag_set (flag); } e_flag_wait (flag); -- cgit v1.2.3