diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2014-02-25 23:23:11 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2014-03-01 03:38:11 +0800 |
commit | f4bb7d7748f3c407858e9c844d365411c586d861 (patch) | |
tree | 5946af137b2439857433fd9729ba758e9cd3c05d /em-format/e-mail-formatter-quote-text-html.c | |
parent | c3f8c95322ca7e461444820c7469d5527c239b05 (diff) | |
download | gsoc2013-evolution-f4bb7d7748f3c407858e9c844d365411c586d861.tar gsoc2013-evolution-f4bb7d7748f3c407858e9c844d365411c586d861.tar.gz gsoc2013-evolution-f4bb7d7748f3c407858e9c844d365411c586d861.tar.bz2 gsoc2013-evolution-f4bb7d7748f3c407858e9c844d365411c586d861.tar.lz gsoc2013-evolution-f4bb7d7748f3c407858e9c844d365411c586d861.tar.xz gsoc2013-evolution-f4bb7d7748f3c407858e9c844d365411c586d861.tar.zst gsoc2013-evolution-f4bb7d7748f3c407858e9c844d365411c586d861.zip |
EMailFormatter: Use GOutputStream instead of CamelStream.
Diffstat (limited to 'em-format/e-mail-formatter-quote-text-html.c')
-rw-r--r-- | em-format/e-mail-formatter-quote-text-html.c | 40 |
1 files changed, 22 insertions, 18 deletions
diff --git a/em-format/e-mail-formatter-quote-text-html.c b/em-format/e-mail-formatter-quote-text-html.c index 7183fac96e..5ae94f7313 100644 --- a/em-format/e-mail-formatter-quote-text-html.c +++ b/em-format/e-mail-formatter-quote-text-html.c @@ -50,36 +50,40 @@ emqfe_text_html_format (EMailFormatterExtension *extension, EMailFormatter *formatter, EMailFormatterContext *context, EMailPart *part, - CamelStream *stream, + GOutputStream *stream, GCancellable *cancellable) { EMailFormatterQuoteContext *qf_context; + GOutputStream *filtered_stream; + const gchar *string; qf_context = (EMailFormatterQuoteContext *) context; - camel_stream_write_string ( - stream, "\n<!-- text/html -->\n", cancellable, NULL); + string = "\n<!-- text/html -->\n"; + g_output_stream_write_all ( + stream, string, strlen (string), NULL, cancellable, NULL); - if ((qf_context->qf_flags & E_MAIL_FORMATTER_QUOTE_FLAG_KEEP_SIG) == 0) { - CamelMimeFilter *sig_strip; - CamelStream *filtered_stream; - - filtered_stream = camel_stream_filter_new (stream); + filtered_stream = g_object_ref (stream); - sig_strip = e_mail_stripsig_filter_new (FALSE); - camel_stream_filter_add ( - CAMEL_STREAM_FILTER (filtered_stream), sig_strip); - g_object_unref (sig_strip); + if ((qf_context->qf_flags & E_MAIL_FORMATTER_QUOTE_FLAG_KEEP_SIG) == 0) { + CamelMimeFilter *filter; + GOutputStream *temp_stream; - e_mail_formatter_format_text ( - formatter, part, filtered_stream, cancellable); - camel_stream_flush (filtered_stream, cancellable, NULL); + filter = e_mail_stripsig_filter_new (FALSE); + temp_stream = camel_filter_output_stream_new ( + filtered_stream, filter); g_object_unref (filtered_stream); - } else { - e_mail_formatter_format_text ( - formatter, part, stream, cancellable); + filtered_stream = temp_stream; + g_object_unref (filter); } + e_mail_formatter_format_text ( + formatter, part, filtered_stream, cancellable); + + g_output_stream_flush (filtered_stream, cancellable, NULL); + + g_object_unref (filtered_stream); + return TRUE; } |