aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers/local/camel-mh-folder.c
diff options
context:
space:
mode:
authorMichael Zucci <zucchi@src.gnome.org>2000-11-15 13:44:25 +0800
committerMichael Zucci <zucchi@src.gnome.org>2000-11-15 13:44:25 +0800
commit80bec4b3e5de8044697f4acddd05947cbf68d8c4 (patch)
tree737617e243ff10e5cecd912da81c38377c9fe37e /camel/providers/local/camel-mh-folder.c
parent1593182b1ca1a76dbf65b5ba1700f1f0d56e097d (diff)
downloadgsoc2013-evolution-80bec4b3e5de8044697f4acddd05947cbf68d8c4.tar
gsoc2013-evolution-80bec4b3e5de8044697f4acddd05947cbf68d8c4.tar.gz
gsoc2013-evolution-80bec4b3e5de8044697f4acddd05947cbf68d8c4.tar.bz2
gsoc2013-evolution-80bec4b3e5de8044697f4acddd05947cbf68d8c4.tar.lz
gsoc2013-evolution-80bec4b3e5de8044697f4acddd05947cbf68d8c4.tar.xz
gsoc2013-evolution-80bec4b3e5de8044697f4acddd05947cbf68d8c4.tar.zst
gsoc2013-evolution-80bec4b3e5de8044697f4acddd05947cbf68d8c4.zip
Maildir lives.
svn path=/trunk/; revision=6576
Diffstat (limited to 'camel/providers/local/camel-mh-folder.c')
-rw-r--r--camel/providers/local/camel-mh-folder.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/camel/providers/local/camel-mh-folder.c b/camel/providers/local/camel-mh-folder.c
index 64f9bbee81..c3b74dc3d6 100644
--- a/camel/providers/local/camel-mh-folder.c
+++ b/camel/providers/local/camel-mh-folder.c
@@ -149,14 +149,19 @@ static void mh_append_message(CamelFolder * folder, CamelMimeMessage * message,
return;
}
- if (camel_data_wrapper_write_to_stream((CamelDataWrapper *)message, output_stream) == -1) {
+ if (camel_data_wrapper_write_to_stream((CamelDataWrapper *)message, output_stream) == -1
+ || camel_stream_close(output_stream) == -1) {
camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
_("Cannot append message to mh folder: %s: %s"), name, g_strerror(errno));
camel_object_unref((CamelObject *)output_stream);
+ unlink(name);
g_free(name);
return;
}
+ /* close this? */
+ camel_object_unref((CamelObject *)output_stream);
+
g_free(name);
camel_object_trigger_event((CamelObject *)folder, "folder_changed", ((CamelLocalFolder *)mh_folder)->changes);