diff options
author | Will Thompson <will.thompson@collabora.co.uk> | 2010-03-16 19:32:16 +0000 |
---|---|---|
committer | Will Thompson <will.thompson@collabora.co.uk> | 2010-03-16 19:43:26 +0000 |
commit | 6fdcb861bd5d01093b0ce2c2d5998df0595410cb (patch) | |
tree | a87dbbdcf2c32fa4a401dfaae30d7ffccd1c3d79 /wocky/wocky-pep-service.c | |
parent | 9252f908ac24709e3b0486a5d6617d6f07a80eaf (diff) |
pep-service: don't crash on disconnect during retrieval
If 'reply' is NULL, we shouldn't set it as the operation result with
g_object_unref() as its destructor, since the latter doesn't like being
passed NULL. I've checked other uses of
g_simple_async_result_set_op_res_gpointer() in Wocky, and they're fine.
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Diffstat (limited to 'wocky/wocky-pep-service.c')
-rw-r--r-- | wocky/wocky-pep-service.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/wocky/wocky-pep-service.c b/wocky/wocky-pep-service.c index 3621f4e..d6173ec 100644 --- a/wocky/wocky-pep-service.c +++ b/wocky/wocky-pep-service.c @@ -284,8 +284,11 @@ send_query_cb (GObject *source, g_simple_async_result_set_from_error (result, error); g_error_free (error); } + else + { + g_simple_async_result_set_op_res_gpointer (result, reply, g_object_unref); + } - g_simple_async_result_set_op_res_gpointer (result, reply, g_object_unref); g_simple_async_result_complete (result); g_object_unref (result); } |