aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2014-06-17 21:52:30 +0800
committerMilan Crha <mcrha@redhat.com>2014-06-17 21:54:04 +0800
commit17cef3b8c8862f0659f287763c94ed6a6077a00c (patch)
tree46289f717d38b9aefa6dd0b099059f16b2c5d375
parent4a2d762f5e859b2f44e7321f602d896987ecac58 (diff)
downloadgsoc2013-evolution-17cef3b8c8862f0659f287763c94ed6a6077a00c.tar
gsoc2013-evolution-17cef3b8c8862f0659f287763c94ed6a6077a00c.tar.gz
gsoc2013-evolution-17cef3b8c8862f0659f287763c94ed6a6077a00c.tar.bz2
gsoc2013-evolution-17cef3b8c8862f0659f287763c94ed6a6077a00c.tar.lz
gsoc2013-evolution-17cef3b8c8862f0659f287763c94ed6a6077a00c.tar.xz
gsoc2013-evolution-17cef3b8c8862f0659f287763c94ed6a6077a00c.tar.zst
gsoc2013-evolution-17cef3b8c8862f0659f287763c94ed6a6077a00c.zip
Crash in client_selector_allow_auth_prompt_done_cb() on error
Actually, g_simple_async_result_take_error() means take, not copy, thus the later g_clear_error() was incorrect, possibly freeing already freed memory.
-rw-r--r--e-util/e-client-selector.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/e-util/e-client-selector.c b/e-util/e-client-selector.c
index 740d456ed2..9951ae3298 100644
--- a/e-util/e-client-selector.c
+++ b/e-util/e-client-selector.c
@@ -629,8 +629,7 @@ client_selector_allow_auth_prompt_done_cb (GObject *source_object,
if (local_error) {
g_simple_async_result_take_error (data->simple, local_error);
g_simple_async_result_complete (data->simple);
-
- g_clear_error (&local_error);
+ local_error = NULL;
} else {
EClientCache *client_cache;
const gchar *extension_name;