Retrieve image attachments asynchronously to avoid hanging UI
[modest] / src / widgets / modest-gtkhtml-msg-view.c
index dcd6923..4c3e9fe 100644 (file)
@@ -1743,6 +1743,11 @@ find_cid_image (TnyMsg *msg, const gchar *cid)
        return part;
 }
 
+static void
+fetch_url_decode_to_stream_cb (TnyMimePart *self, gboolean cancelled, TnyStream *stream, GError *err, gpointer user_data)
+{
+       tny_stream_close (stream);
+}
 
 static gboolean
 on_fetch_url (GtkWidget *widget, const gchar *uri,
@@ -1793,8 +1798,7 @@ on_fetch_url (GtkWidget *widget, const gchar *uri,
                }
        }
 
-       tny_mime_part_decode_to_stream ((TnyMimePart*)part, stream, NULL);
-       tny_stream_close (stream);
+       tny_mime_part_decode_to_stream_async ((TnyMimePart*)part, stream, fetch_url_decode_to_stream_cb, NULL, NULL);
        g_object_unref (G_OBJECT(part));
        return TRUE;
 }