diff options
-rw-r--r-- | camel/ChangeLog | 10 | ||||
-rw-r--r-- | camel/providers/imap/camel-imap-folder.c | 5 | ||||
-rw-r--r-- | camel/providers/imap/camel-imap-wrapper.c | 4 | ||||
-rw-r--r-- | camel/providers/imap/camel-imap-wrapper.h | 1 |
4 files changed, 18 insertions, 2 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog index 81660155b9..4f11989338 100644 --- a/camel/ChangeLog +++ b/camel/ChangeLog @@ -1,3 +1,13 @@ +2004-01-12 Not Zed <NotZed@Ximian.com> + + ** See bug 52725. + + * providers/imap/camel-imap-folder.c (get_content): pass in + transfer encoding when setting up wrapper part. + + * providers/imap/camel-imap-wrapper.c (camel_imap_wrapper_new): + Added an encoding type parameter, set on data wrapper. + 2004-01-10 Jeffrey Stedfast <fejj@ximian.com> * camel-mime-utils.c (rfc2047_encode_word): if e_iconv() returns diff --git a/camel/providers/imap/camel-imap-folder.c b/camel/providers/imap/camel-imap-folder.c index a4c40c6635..465e9949f4 100644 --- a/camel/providers/imap/camel-imap-folder.c +++ b/camel/providers/imap/camel-imap-folder.c @@ -1823,7 +1823,10 @@ get_content (CamelImapFolder *imap_folder, const char *uid, g_free (part_spec); return content; } else { - content = camel_imap_wrapper_new (imap_folder, ci->type, uid, *part_spec ? part_spec : "1", part); + CamelTransferEncoding enc; + + enc = ci->encoding?camel_transfer_encoding_from_string(ci->encoding):CAMEL_TRANSFER_ENCODING_DEFAULT; + content = camel_imap_wrapper_new (imap_folder, ci->type, enc, uid, *part_spec ? part_spec : "1", part); g_free (part_spec); return content; } diff --git a/camel/providers/imap/camel-imap-wrapper.c b/camel/providers/imap/camel-imap-wrapper.c index 2cb07b3012..7ee496dd5f 100644 --- a/camel/providers/imap/camel-imap-wrapper.c +++ b/camel/providers/imap/camel-imap-wrapper.c @@ -153,7 +153,8 @@ write_to_stream (CamelDataWrapper *data_wrapper, CamelStream *stream) CamelDataWrapper * -camel_imap_wrapper_new (CamelImapFolder *imap_folder, CamelContentType *type, +camel_imap_wrapper_new (CamelImapFolder *imap_folder, + CamelContentType *type, CamelTransferEncoding encoding, const char *uid, const char *part_spec, CamelMimePart *part) { @@ -164,6 +165,7 @@ camel_imap_wrapper_new (CamelImapFolder *imap_folder, CamelContentType *type, camel_data_wrapper_set_mime_type_field (CAMEL_DATA_WRAPPER (imap_wrapper), type); ((CamelDataWrapper *)imap_wrapper)->offline = TRUE; + ((CamelDataWrapper *)imap_wrapper)->encoding = encoding; imap_wrapper->folder = imap_folder; camel_object_ref (imap_folder); diff --git a/camel/providers/imap/camel-imap-wrapper.h b/camel/providers/imap/camel-imap-wrapper.h index 4f7ca5097a..bbb4c9468b 100644 --- a/camel/providers/imap/camel-imap-wrapper.h +++ b/camel/providers/imap/camel-imap-wrapper.h @@ -59,6 +59,7 @@ CamelType camel_imap_wrapper_get_type (void); /* Constructor */ CamelDataWrapper *camel_imap_wrapper_new (CamelImapFolder *imap_folder, CamelContentType *type, + CamelTransferEncoding encoding, const char *uid, const char *part_spec, CamelMimePart *part); |