diff options
Diffstat (limited to 'mail')
-rw-r--r-- | mail/ChangeLog | 5 | ||||
-rw-r--r-- | mail/mail-ops.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 99b238e33c..8def53ae4a 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,8 @@ +2000-09-07 Jeffrey Stedfast <fejj@helixcode.com> + + * mail-ops.c (do_fetch_mail): Don't free uids, let the camel + folder do that when it gets finalized + 2000-09-06 Jeffrey Stedfast <fejj@helixcode.com> * mail-ops.c (mail_do_filter_ondemand): New async function to diff --git a/mail/mail-ops.c b/mail/mail-ops.c index 8a18bd8ea5..d4592aa251 100644 --- a/mail/mail-ops.c +++ b/mail/mail-ops.c @@ -162,10 +162,13 @@ do_fetch_mail (gpointer in_data, gpointer op_data, CamelException *ex) for (i = 0; i < uids->len; i++) { CamelMimeMessage *message; + mail_tool_camel_lock_up (); message = camel_folder_get_message (folder, uids->pdata[i], ex); + fprintf (stderr, "about to run the filter\n"); filter_driver_run (filter, message, input->destination, FILTER_SOURCE_INCOMING, TRUE, input->hook_func, input->hook_data); + mail_tool_camel_lock_down (); if (!input->keep_on_server) { guint32 flags; @@ -176,11 +179,8 @@ do_fetch_mail (gpointer in_data, gpointer op_data, CamelException *ex) ~flags); } camel_object_unref (CAMEL_OBJECT (message)); - g_free (uids->pdata[i]); } - g_ptr_array_free (uids, TRUE); - data->empty = FALSE; } mail_tool_camel_lock_down (); |