diff options
author | Jeffrey Stedfast <fejj@helixcode.com> | 2000-12-01 08:39:11 +0800 |
---|---|---|
committer | Jeffrey Stedfast <fejj@src.gnome.org> | 2000-12-01 08:39:11 +0800 |
commit | b715bf7b833335b8df6ce0f3783d15eec09106b1 (patch) | |
tree | be9a4792d3ec2edcb9b677aa6c7819d5d6e44253 /filter/filter-driver.c | |
parent | c1d2ec0123694a3b52e9c58de97c60994f5db587 (diff) | |
download | gsoc2013-evolution-b715bf7b833335b8df6ce0f3783d15eec09106b1.tar.gz gsoc2013-evolution-b715bf7b833335b8df6ce0f3783d15eec09106b1.tar.zst gsoc2013-evolution-b715bf7b833335b8df6ce0f3783d15eec09106b1.zip |
Use camel_message_info_free() instead of freeing everything by hand - is
2000-11-30 Jeffrey Stedfast <fejj@helixcode.com>
* filter-driver.c (filter_driver_filter_message): Use
camel_message_info_free() instead of freeing everything by hand -
is this a new function? I don't ever recall seeing this
before. Also use my new function,
camel_message_info_new_from_header - ahhh... this code is now so
beatiful. Okay, I'm done.
svn path=/trunk/; revision=6750
Diffstat (limited to 'filter/filter-driver.c')
-rw-r--r-- | filter/filter-driver.c | 35 |
1 files changed, 3 insertions, 32 deletions
diff --git a/filter/filter-driver.c b/filter/filter-driver.c index 1b8038062a..bfb437bb38 100644 --- a/filter/filter-driver.c +++ b/filter/filter-driver.c @@ -738,27 +738,9 @@ filter_driver_filter_message (FilterDriver *driver, CamelMimeMessage *message, C if (info == NULL) { struct _header_raw *h = CAMEL_MIME_PART (message)->headers; - char *subject, *from, *to, *cc; - info = g_new0 (CamelMessageInfo, 1); + info = camel_message_info_new_from_header (h); freeinfo = TRUE; - - /* FIXME: do we even *need* to set these? Are they even used? -- fejj */ - subject = camel_folder_summary_format_string (h, "subject"); - from = camel_folder_summary_format_address (h, "from"); - to = camel_folder_summary_format_address (h, "to"); - cc = camel_folder_summary_format_address (h, "cc"); -#ifdef DOESTRV - camel_message_info_set_subject (info, subject); - camel_message_info_set_from (info, from); - camel_message_info_set_to (info, to); - camel_message_info_set_cc (info, cc); -#else - info->subject = subject; - info->from = from; - info->to = to; - info->cc = cc; -#endif /* DOESTRV */ } else { if (info->flags & CAMEL_MESSAGE_DELETED) return; @@ -822,19 +804,8 @@ filter_driver_filter_message (FilterDriver *driver, CamelMimeMessage *message, C if (p->deleted) info->flags = info->flags | CAMEL_MESSAGE_DELETED; - if (freeinfo) { - camel_flag_list_free (&info->user_flags); - camel_tag_list_free (&info->user_tags); -#ifdef DOESTRV - e_strv_destroy (info->strings); -#else - g_free (info->subject); - g_free (info->from); - g_free (info->to); - g_free (info->cc); -#endif /* DOESTRV */ - g_free (info); - } + if (freeinfo) + camel_message_info_free (info); if (filtered) filter_driver_log (driver, FILTER_LOG_END, NULL); |