summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl-Anton Ingmarsson <ca.ingmarsson@gmail.com>2012-01-22 17:15:52 +0100
committerCarl-Anton Ingmarsson <ca.ingmarsson@gmail.com>2012-01-22 17:15:52 +0100
commitf30a3c75f0102c69502edff77c6dba3775d90569 (patch)
treeed9e967325bd3ca2e53eeb6d5011c37c30afa85f
parentfa288893d51478daa7190bbb554779404a205157 (diff)
downloadgvfs-f30a3c75f0102c69502edff77c6dba3775d90569.tar.gz
afp: fix potential leak in g_vfs_afp_volume_enumerate
-rw-r--r--daemon/gvfsafpvolume.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/daemon/gvfsafpvolume.c b/daemon/gvfsafpvolume.c
index 5bc60324..b69056ce 100644
--- a/daemon/gvfsafpvolume.c
+++ b/daemon/gvfsafpvolume.c
@@ -2498,7 +2498,8 @@ enumerate_cb (GObject *source_object, GAsyncResult *res, gpointer user_data)
}
g_object_unref (reply);
- g_simple_async_result_set_op_res_gpointer (simple, infos, NULL);
+ g_simple_async_result_set_op_res_gpointer (simple, infos,
+ (GDestroyNotify)g_ptr_array_unref);
done:
g_simple_async_result_complete (simple);
@@ -2624,6 +2625,8 @@ g_vfs_afp_volume_enumerate_finish (GVfsAfpVolume *volume,
return FALSE;
*infos = g_simple_async_result_get_op_res_gpointer (simple);
+ if (*infos)
+ g_ptr_array_ref (*infos);
return TRUE;
}