diff options
author | Jules Colding <jcolding@src.gnome.org> | 2007-05-29 17:06:58 +0800 |
---|---|---|
committer | Jules Colding <jcolding@src.gnome.org> | 2007-05-29 17:06:58 +0800 |
commit | 1118857d92056b587950ea62feec07c4dde63e42 (patch) | |
tree | 0533f108b4291e46a7faf91c7df578d1f49c1ace /mail/em-utils.c | |
parent | d867b114fa56ed518b41bcdf2e6affe980e0ae10 (diff) | |
download | gsoc2013-evolution-1118857d92056b587950ea62feec07c4dde63e42.tar gsoc2013-evolution-1118857d92056b587950ea62feec07c4dde63e42.tar.gz gsoc2013-evolution-1118857d92056b587950ea62feec07c4dde63e42.tar.bz2 gsoc2013-evolution-1118857d92056b587950ea62feec07c4dde63e42.tar.lz gsoc2013-evolution-1118857d92056b587950ea62feec07c4dde63e42.tar.xz gsoc2013-evolution-1118857d92056b587950ea62feec07c4dde63e42.tar.zst gsoc2013-evolution-1118857d92056b587950ea62feec07c4dde63e42.zip |
Fix file descriptor leaks
svn path=/trunk/; revision=33598
Diffstat (limited to 'mail/em-utils.c')
-rw-r--r-- | mail/em-utils.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/mail/em-utils.c b/mail/em-utils.c index ab958efc12..e4d53ba12b 100644 --- a/mail/em-utils.c +++ b/mail/em-utils.c @@ -1115,7 +1115,9 @@ em_utils_selection_set_urilist(GtkSelectionData *data, CamelFolder *folder, GPtr } camel_object_unref(fstream); - } + } else + close(fd); + g_free(uri); } @@ -1154,8 +1156,11 @@ em_utils_selection_get_urilist(GtkSelectionData *data, CamelFolder *folder) if (strcmp(url->protocol, "file") == 0 && (fd = g_open(url->path, O_RDONLY | O_BINARY, 0)) != -1) { stream = camel_stream_fs_new_with_fd(fd); - res = em_utils_read_messages_from_stream(folder, stream); - camel_object_unref(stream); + if (stream) { + res = em_utils_read_messages_from_stream(folder, stream); + camel_object_unref(stream); + } else + close(fd); } camel_url_free(url); } |