diff options
author | Carl-Anton Ingmarsson <ca.ingmarsson@gmail.com> | 2011-08-14 13:07:59 +0200 |
---|---|---|
committer | Christian Kellner <gicmo@gnome.org> | 2011-08-25 21:19:55 +0200 |
commit | 936a4dc3d63f4def4ef6e5eae716da26e8b8f98d (patch) | |
tree | 71854b1a6b913164e4f0446fe7c5b5f753bd9690 /daemon/gvfsafpconnection.c | |
parent | 9d46e6ce8d00176ac08d1ed7fad43a4a415a7f56 (diff) | |
download | gvfs-936a4dc3d63f4def4ef6e5eae716da26e8b8f98d.tar.gz |
afp: fix some leaks of GSimpleAsyncResults
Diffstat (limited to 'daemon/gvfsafpconnection.c')
-rw-r--r-- | daemon/gvfsafpconnection.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/daemon/gvfsafpconnection.c b/daemon/gvfsafpconnection.c index a222cf6c..4c369a8f 100644 --- a/daemon/gvfsafpconnection.c +++ b/daemon/gvfsafpconnection.c @@ -671,8 +671,7 @@ read_all_cb (GObject *source_object, GAsyncResult *res, gpointer user_data) if (bytes_read == -1) { g_simple_async_result_take_error (simple, err); - g_simple_async_result_complete (simple); - return; + goto done; } read_data = g_simple_async_result_get_op_res_gpointer (simple); @@ -687,7 +686,9 @@ read_all_cb (GObject *source_object, GAsyncResult *res, gpointer user_data) return; } +done: g_simple_async_result_complete (simple); + g_object_unref (simple); } static void @@ -958,8 +959,7 @@ write_all_cb (GObject *source_object, if (bytes_written == -1) { g_simple_async_result_take_error (simple, err); - g_simple_async_result_complete (simple); - return; + goto done; } write_data = g_simple_async_result_get_op_res_gpointer (simple); @@ -975,7 +975,9 @@ write_all_cb (GObject *source_object, return; } +done: g_simple_async_result_complete (simple); + g_object_unref (simple); } static void |