aboutsummaryrefslogtreecommitdiffstats
path: root/mail/message-list.c
diff options
context:
space:
mode:
authorNot Zed <NotZed@Ximian.com>2001-07-24 09:36:11 +0800
committerMichael Zucci <zucchi@src.gnome.org>2001-07-24 09:36:11 +0800
commitcb4926026f1f05ffd44af0a9ab51c01f1bfdf21c (patch)
tree20d3b2b8e1c69147dda487a237e80e07e7158bda /mail/message-list.c
parent8dd7c75d2940282ec0bb41338e2ea24f5b799c98 (diff)
downloadgsoc2013-evolution-cb4926026f1f05ffd44af0a9ab51c01f1bfdf21c.tar.gz
gsoc2013-evolution-cb4926026f1f05ffd44af0a9ab51c01f1bfdf21c.tar.zst
gsoc2013-evolution-cb4926026f1f05ffd44af0a9ab51c01f1bfdf21c.zip
Go back to calling mail_msg_free here. (mail_msg_destroy): Remove the
2001-07-23 Not Zed <NotZed@Ximian.com> * mail-mt.c (mail_msgport_replied): Go back to calling mail_msg_free here. (mail_msg_destroy): Remove the operation unregistration stuff. (mail_msg_received): And put it here, so we unregister as soon as the async part of the operation is complete. I thought about this and we should be doing this anyway so we register/unregister always in the same thread, although the camel_operation api doesn't enforce it, this *is* what it expects. * message-list.c (regen_list_regen): re-add reporting to rebuilding the message list. Basically fixes #4931 svn path=/trunk/; revision=11332
Diffstat (limited to 'mail/message-list.c')
-rw-r--r--mail/message-list.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/mail/message-list.c b/mail/message-list.c
index ffa922590a..581452e99c 100644
--- a/mail/message-list.c
+++ b/mail/message-list.c
@@ -2285,14 +2285,20 @@ regen_list_regen (struct _mail_msg *mm)
GPtrArray *uids, *uidnew, *showuids;
CamelMessageInfo *info;
int i;
-
+
+ camel_operation_register(mm->cancel);
+ camel_operation_start(mm->cancel, _("Updating message list"));
+
if (m->search)
uids = camel_folder_search_by_expression (m->folder, m->search, &mm->ex);
else
uids = camel_folder_get_uids (m->folder);
- if (camel_exception_is_set (&mm->ex))
+ if (camel_exception_is_set (&mm->ex)) {
+ camel_operation_end(mm->cancel);
+ camel_operation_unregister(mm->cancel);
return;
+ }
/* perform hiding */
if (m->hideexpr) {
@@ -2395,6 +2401,9 @@ regen_list_regen (struct _mail_msg *mm)
m->tree = camel_folder_thread_messages_new_summary (m->summary);
else
m->tree = NULL;
+
+ camel_operation_end(mm->cancel);
+ camel_operation_unregister(mm->cancel);
}
static void