]> git.notmuchmail.org Git - notmuch/blobdiff - notmuch-show.c
ruby: First attempt at fixing gc for ruby-1.9
[notmuch] / notmuch-show.c
index 26449fa5bd0c2efde1d6f45460ee36cef60ce342..af7854d814b929c9be1b43bb5b3d33cfa8a0e340 100644 (file)
@@ -221,13 +221,19 @@ show_part_content (GMimeObject *part, GMimeStream *stream_out)
     charset = g_mime_object_get_content_type_parameter (part, "charset");
 
     if (stream_out) {
-       stream_filter = g_mime_stream_filter_new(stream_out);
-       g_mime_stream_filter_add(GMIME_STREAM_FILTER(stream_filter),
-                                g_mime_filter_crlf_new(FALSE, FALSE));
+       stream_filter = g_mime_stream_filter_new (stream_out);
+       g_mime_stream_filter_add(GMIME_STREAM_FILTER (stream_filter),
+                                g_mime_filter_crlf_new (FALSE, FALSE));
         if (charset) {
-          g_mime_stream_filter_add(GMIME_STREAM_FILTER(stream_filter),
-                                   g_mime_filter_charset_new(charset, "UTF-8"));
-        }
+           GMimeFilter *charset_filter;
+           charset_filter = g_mime_filter_charset_new (charset, "UTF-8");
+           /* This result can be NULL for things like "unknown-8bit".
+            * Don't set a NULL filter as that makes GMime print
+            * annoying assertion-failure messages on stderr. */
+           if (charset_filter)
+               g_mime_stream_filter_add (GMIME_STREAM_FILTER (stream_filter),
+                                         charset_filter);
+       }
     }
 
     wrapper = g_mime_part_get_content_object (GMIME_PART (part));