From: Alexander Larsson Date: Tue, 29 Sep 2009 09:25:13 +0000 (+0200) Subject: Avoid critical error in thread check if source is destroyed X-Git-Tag: 2.22.1~7 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=90e1308809805691713edf8f651e80a063f9b66f;p=platform%2Fupstream%2Fglib.git Avoid critical error in thread check if source is destroyed The source can be destroyed by the time we complete the result, and then the g_source_get_context(current_source) call will cause a critical error. We check for the source being destroyed and avoid the check in that case. This means we miss the right-thread check in this case, but thats merely a helper, so this is not critical. --- diff --git a/gio/gsimpleasyncresult.c b/gio/gsimpleasyncresult.c index e177937..3fa43f0 100644 --- a/gio/gsimpleasyncresult.c +++ b/gio/gsimpleasyncresult.c @@ -574,7 +574,7 @@ g_simple_async_result_complete (GSimpleAsyncResult *simple) #ifndef G_DISABLE_CHECKS current_source = g_main_current_source (); - if (current_source) + if (current_source && !g_source_is_destroyed (current_source)) { current_context = g_source_get_context (current_source); if (current_context == g_main_context_default ())