Dispose list store in folder view on disposing it.
[modest] / src / modest-formatter.c
index 8cdd091..dd1efe0 100644 (file)
@@ -106,6 +106,9 @@ extract_text (ModestFormatter *self, TnyMimePart *body)
                        break;
                n_read = tny_stream_read (input_stream, buffer, next_read);
 
+               if (G_UNLIKELY (n_read < 0))
+                       break;
+
                offset = buffer;
                while (offset < buffer + n_read) {
                        
@@ -226,32 +229,6 @@ modest_formatter_inline (ModestFormatter *self, TnyMimePart *body, TnyHeader *he
        return modest_formatter_do (self, body, header, modest_formatter_wrapper_inline, attachments);
 }
 
-static void
-remove_purgeds (TnyMimePart *part)
-{
-       TnyList *parts;
-       TnyIterator *iterator;
-
-       parts = TNY_LIST (tny_simple_list_new ());
-       tny_mime_part_get_parts (part, parts);
-
-       for (iterator = tny_list_create_iterator (parts);
-            !tny_iterator_is_done (iterator);
-            tny_iterator_next (iterator)) {
-               TnyMimePart *current;
-
-               current = (TnyMimePart *) tny_iterator_get_current (iterator);
-               if (tny_mime_part_is_purged (current)) {
-                       tny_mime_part_del_part (part, current);
-               }
-
-               g_object_unref (current);
-       }
-
-       g_object_unref (iterator);
-       g_object_unref (parts);
-}
-
 TnyMsg *
 modest_formatter_attach (ModestFormatter *self, TnyMsg *msg, TnyHeader *header)
 {
@@ -273,10 +250,6 @@ modest_formatter_attach (ModestFormatter *self, TnyMsg *msg, TnyHeader *header)
        g_object_unref (body_part);
 
        if (msg) {
-
-               /* Remove purgeds */
-               remove_purgeds (TNY_MIME_PART (msg));
-
                /* Add parts */
                tny_mime_part_add_part (TNY_MIME_PART (new_msg), TNY_MIME_PART (msg));
        }
@@ -505,7 +478,7 @@ find_body_parent (TnyMimePart *part)
        msg_content_type = tny_mime_part_get_content_type (part);
 
        if ((msg_content_type != NULL) &&
-           (!g_strcasecmp (msg_content_type, "multipart/alternative")))
+           (!g_ascii_strcasecmp (msg_content_type, "multipart/alternative")))
                return g_object_ref (part);
        else if ((msg_content_type != NULL) &&
                 (g_str_has_prefix (msg_content_type, "multipart/"))) {
@@ -518,10 +491,10 @@ find_body_parent (TnyMimePart *part)
 
                while (!tny_iterator_is_done (iter)) {
                        TnyMimePart *part = TNY_MIME_PART (tny_iterator_get_current (iter));
-                       if (part && !g_strcasecmp(tny_mime_part_get_content_type (part), "multipart/alternative")) {
+                       if (part && !g_ascii_strcasecmp(tny_mime_part_get_content_type (part), "multipart/alternative")) {
                                alternative_part = part;
                                break;
-                       } else if (part && !g_strcasecmp (tny_mime_part_get_content_type (part), "multipart/related")) {
+                       } else if (part && !g_ascii_strcasecmp (tny_mime_part_get_content_type (part), "multipart/related")) {
                                related_part = part;
                                break;
                        }