aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog13
-rw-r--r--mail/em-folder-view.c5
-rw-r--r--mail/mail-ops.c4
-rw-r--r--mail/message-list.c3
4 files changed, 19 insertions, 6 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index ee8338050d..445309089f 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,16 @@
+2004-05-07 Not Zed <NotZed@Ximian.com>
+
+ ** See #58017.
+
+ * message-list.c (mail_regen_list): use thread_queued, so we don't
+ regen out of order.
+
+ * em-folder-view.c (emfv_list_message_selected): use the queue
+ thread so we don't get messages out of order.
+
+ * mail-ops.c (mail_transfer_messages): use thread_queued_slow.
+ (mail_prep_offline): and here too.
+
2004-05-06 Jeffrey Stedfast <fejj@ximian.com>
* mail-component.c (folder_selected_cb): Check that the folder is
diff --git a/mail/em-folder-view.c b/mail/em-folder-view.c
index 10e8be6600..09ba0c6360 100644
--- a/mail/em-folder-view.c
+++ b/mail/em-folder-view.c
@@ -1916,15 +1916,14 @@ emfv_list_done_message_selected(CamelFolder *folder, const char *uid, CamelMimeM
static void
emfv_list_message_selected(MessageList *ml, const char *uid, EMFolderView *emfv)
{
- /* FIXME: ui stuff based on messageinfo, if available */
-
if (emfv->preview_active) {
if (uid) {
if (emfv->displayed_uid == NULL || strcmp(emfv->displayed_uid, uid) != 0) {
g_free(emfv->displayed_uid);
emfv->displayed_uid = g_strdup(uid);
g_object_ref (emfv);
- mail_get_message(emfv->folder, uid, emfv_list_done_message_selected, emfv, mail_thread_new);
+ /* TODO: we should manage our own thread stuff, would make cancelling outstanding stuff easier */
+ mail_get_message(emfv->folder, uid, emfv_list_done_message_selected, emfv, mail_thread_queued);
}
} else {
g_free(emfv->displayed_uid);
diff --git a/mail/mail-ops.c b/mail/mail-ops.c
index fc54aa9c82..cf0b74e6f1 100644
--- a/mail/mail-ops.c
+++ b/mail/mail-ops.c
@@ -979,7 +979,7 @@ mail_transfer_messages (CamelFolder *source, GPtrArray *uids,
m->done = done;
m->data = data;
- e_thread_put(mail_thread_queued, (EMsg *)m);
+ e_thread_put(mail_thread_queued_slow, (EMsg *)m);
}
/* ** SCAN SUBFOLDERS ***************************************************** */
@@ -2171,7 +2171,7 @@ mail_prep_offline(const char *uri,
m->data = data;
m->done = done;
- e_thread_put(mail_thread_queued, (EMsg *)m);
+ e_thread_put(mail_thread_queued_slow, (EMsg *)m);
}
/* ** GO OFFLINE ***************************************************** */
diff --git a/mail/message-list.c b/mail/message-list.c
index 9ae5673bd2..252957445e 100644
--- a/mail/message-list.c
+++ b/mail/message-list.c
@@ -3425,7 +3425,8 @@ mail_regen_list (MessageList *ml, const char *search, const char *hideexpr, Came
ml->regen = g_list_prepend(ml->regen, m);
- e_thread_put (mail_thread_new, (EMsg *)m);
+ /* TODO: we should manage our own thread stuff, would make cancelling outstanding stuff easier */
+ e_thread_put (mail_thread_queued, (EMsg *)m);
}