diff options
author | Not Zed <NotZed@Ximian.com> | 2001-07-11 15:28:40 +0800 |
---|---|---|
committer | Michael Zucci <zucchi@src.gnome.org> | 2001-07-11 15:28:40 +0800 |
commit | 96496c1392cea9179b9bfbf2b6895e69a6dd13af (patch) | |
tree | e244cf9b9dfb4def14dfc9acf34bcb634d0b9a37 /camel/camel-filter-driver.c | |
parent | 50e64dee0a5c75d4a6a5df1c41bac37165f2f51b (diff) | |
download | gsoc2013-evolution-96496c1392cea9179b9bfbf2b6895e69a6dd13af.tar.gz gsoc2013-evolution-96496c1392cea9179b9bfbf2b6895e69a6dd13af.tar.zst gsoc2013-evolution-96496c1392cea9179b9bfbf2b6895e69a6dd13af.zip |
Create the messageinfo itself, so we can properly set the size.
2001-07-11 Not Zed <NotZed@Ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_mbox): Create
the messageinfo itself, so we can properly set the size.
* camel-movemail.c (camel_movemail_solaris): Write out the from
line between each message.
2001-07-10 Not Zed <NotZed@Ximian.com>
* providers/local/camel-local-summary.c (local_summary_add): Copy
the size across from the source message info if supplied.
* camel-stream-null.c: Added a 'written' member which keeps track
of how much has been written to the stream.
* camel-movemail.c (camel_movemail): If we have BROKEN_SPOOL
defined, then use the solaris movemail to quote from lines that
sendmail didn't.
(camel_movemail_solaris): Compile this in if BROKEN_SPOOL defined.
svn path=/trunk/; revision=10989
Diffstat (limited to 'camel/camel-filter-driver.c')
-rw-r--r-- | camel/camel-filter-driver.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/camel/camel-filter-driver.c b/camel/camel-filter-driver.c index 71c1091b07..92cce8bab8 100644 --- a/camel/camel-filter-driver.c +++ b/camel/camel-filter-driver.c @@ -629,7 +629,9 @@ camel_filter_driver_filter_mbox (CamelFilterDriver *driver, const char *mbox, co int i = 0; struct stat st; int status; - + CamelMessageInfo *info; + off_t last = 0; + fd = open (mbox, O_RDONLY); if (fd == -1) { camel_exception_set (ex, CAMEL_EXCEPTION_SYSTEM, _("Unable to open spool folder")); @@ -665,7 +667,10 @@ camel_filter_driver_filter_mbox (CamelFilterDriver *driver, const char *mbox, co goto fail; } - status = camel_filter_driver_filter_message (driver, msg, NULL, NULL, NULL, source_url, + info = camel_message_info_new_from_header(((CamelMimePart *)msg)->headers); + info->size = camel_mime_parser_tell(mp) - last; + last = camel_mime_parser_tell(mp); + status = camel_filter_driver_filter_message (driver, msg, info, NULL, NULL, source_url, original_source_url ? original_source_url : source_url, ex); camel_object_unref (CAMEL_OBJECT (msg)); if (camel_exception_is_set (ex) || status == -1) { |