2008-11-02  Matthew Barnes  <mbarnes@redhat.com>

	** Fixes bug #557613

	* mail/em-utils.c (try_open_e_book):
	Wait for try_open_e_book_cb() to run before freeing the EFlag.
	It will run regardless of whether the EBook operation completes.


svn path=/trunk/; revision=36715
This commit is contained in:
Matthew Barnes
2008-11-02 18:21:05 +00:00
committed by Matthew Barnes
parent 71b380658b
commit 4052f5078c
2 changed files with 13 additions and 5 deletions

View File

@ -1,3 +1,11 @@
2008-11-02 Matthew Barnes <mbarnes@redhat.com>
** Fixes bug #557613
* em-utils.c (try_open_e_book):
Wait for try_open_e_book_cb() to run before freeing the EFlag.
It will run regardless of whether the EBook operation completes.
2008-10-31 Matthew Barnes <mbarnes@redhat.com>
** Fixes part of bug #558726 (patch by Frederic van Starbmann)

View File

@ -2081,14 +2081,14 @@ try_open_e_book (EBook *book, gboolean only_if_exists, GError **error)
e_flag_timed_wait (flag, &wait);
}
e_flag_free (flag);
if (canceled) {
g_set_error (error, E_BOOK_ERROR, E_BOOK_ERROR_CANCELLED, "Operation has been canceled.");
e_book_cancel_async_op (book, NULL);
return FALSE;
}
e_flag_wait (flag);
e_flag_free (flag);
return data.result;
}
@ -2183,7 +2183,7 @@ em_utils_in_addressbook (CamelInternetAddress *iaddr, gboolean local_only)
stop = err && err->domain == E_BOOK_ERROR && err->code == E_BOOK_ERROR_CANCELLED;
mail_cancel_hook_remove(hook);
g_object_unref(book);
d(g_warning("Can't get contacts: %s", err->message));
g_warning("Can't get contacts: %s", err->message);
g_clear_error(&err);
continue;
}
@ -2267,7 +2267,7 @@ em_utils_contact_photo (struct _CamelInternetAddress *cia, gboolean local)
|| !e_book_get_contacts(book, query, &contacts, &err)) {
stop = err && err->domain == E_BOOK_ERROR && err->code == E_BOOK_ERROR_CANCELLED;
g_object_unref(book);
d(g_warning("Can't get contacts: %s", err->message));
g_warning("Can't get contacts: %s", err->message);
g_clear_error(&err);
continue;
}