aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNot Zed <NotZed@Ximian.com>2002-08-06 11:55:12 +0800
committerMichael Zucci <zucchi@src.gnome.org>2002-08-06 11:55:12 +0800
commit5c45e184a45679817e123abb6efcf937d6f50cdc (patch)
tree04811251e612db47e19d3849207c8faccb49cdf2
parentabafd9de4f2e7f63ec522aae1009a671cb19425c (diff)
downloadgsoc2013-evolution-5c45e184a45679817e123abb6efcf937d6f50cdc.tar
gsoc2013-evolution-5c45e184a45679817e123abb6efcf937d6f50cdc.tar.gz
gsoc2013-evolution-5c45e184a45679817e123abb6efcf937d6f50cdc.tar.bz2
gsoc2013-evolution-5c45e184a45679817e123abb6efcf937d6f50cdc.tar.lz
gsoc2013-evolution-5c45e184a45679817e123abb6efcf937d6f50cdc.tar.xz
gsoc2013-evolution-5c45e184a45679817e123abb6efcf937d6f50cdc.tar.zst
gsoc2013-evolution-5c45e184a45679817e123abb6efcf937d6f50cdc.zip
Check driver != NULL, if folder_filter freed it already.
2002-08-06 Not Zed <NotZed@Ximian.com> * mail-ops.c (fetch_mail_fetch): Check driver != NULL, if folder_filter freed it already. svn path=/trunk/; revision=17705
-rw-r--r--mail/ChangeLog2
-rw-r--r--mail/mail-ops.c6
2 files changed, 6 insertions, 2 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 389f828f88..4060561111 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -3,6 +3,8 @@
* mail-ops.c (filter_folder_filter): Unref the driver before
returning to main thread, so any closing operations are handled
async (as in fetch_mail_fetch()), for #28072.
+ (fetch_mail_fetch): Check driver != NULL, if folder_filter freed
+ it already.
** fixes for #24605.
diff --git a/mail/mail-ops.c b/mail/mail-ops.c
index 38225769b7..b4d3788ed5 100644
--- a/mail/mail-ops.c
+++ b/mail/mail-ops.c
@@ -367,8 +367,10 @@ fetch_mail_fetch (struct _mail_msg *mm)
/* we unref this here as it may have more work to do (syncing
folders and whatnot) before we are really done */
/* should this be cancellable too? (i.e. above unregister above) */
- camel_object_unref (CAMEL_OBJECT (fm->driver));
- fm->driver = NULL;
+ if (fm->driver) {
+ camel_object_unref (CAMEL_OBJECT (fm->driver));
+ fm->driver = NULL;
+ }
}
static void