aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/misc/e-attachment-store.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2009-05-05 11:32:41 +0800
committerMatthew Barnes <mbarnes@redhat.com>2009-05-05 11:32:41 +0800
commit3a87c8d166c936ef222e0d90379e9333a727c855 (patch)
treef2ec15c2c1b62be0be902de5704506239fbabd00 /widgets/misc/e-attachment-store.c
parent825f74be1cb9b20b6a67f1b32ca241ef54ee6df3 (diff)
downloadgsoc2013-evolution-3a87c8d166c936ef222e0d90379e9333a727c855.tar.gz
gsoc2013-evolution-3a87c8d166c936ef222e0d90379e9333a727c855.tar.zst
gsoc2013-evolution-3a87c8d166c936ef222e0d90379e9333a727c855.zip
Fix an error extracting URIs from local attachments.
Diffstat (limited to 'widgets/misc/e-attachment-store.c')
-rw-r--r--widgets/misc/e-attachment-store.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/widgets/misc/e-attachment-store.c b/widgets/misc/e-attachment-store.c
index 0b6e5a2baa..9d0fe6d21e 100644
--- a/widgets/misc/e-attachment-store.c
+++ b/widgets/misc/e-attachment-store.c
@@ -818,6 +818,25 @@ e_attachment_store_get_uris_async (EAttachmentStore *store,
uri_context->attachment_list = attachment_list;
+ /* If we got them all then we're done. */
+ if (attachment_list == NULL) {
+ GSimpleAsyncResult *simple;
+ gchar **uris;
+
+ /* Steal the result. */
+ simple = uri_context->simple;
+ uri_context->simple = NULL;
+
+ /* And the URI list. */
+ uris = uri_context->uris;
+ uri_context->uris = NULL;
+
+ g_simple_async_result_set_op_res_gpointer (simple, uris, NULL);
+ g_simple_async_result_complete_in_idle (simple);
+ attachment_store_uri_context_free (uri_context);
+ return;
+ }
+
/* Any remaining attachments in the list should have MIME parts
* only, so we need to save them all to a temporary directory.
* We use a directory so the files can retain their basenames. */