summaryrefslogtreecommitdiff
path: root/gio/gdbusprivate.c
diff options
context:
space:
mode:
authorChristian Persch <chpe@gnome.org>2010-08-30 15:53:49 +0200
committerChristian Persch <chpe@gnome.org>2010-08-30 18:33:47 +0200
commit7a6f8bd3c34e5f5e20f6770d54406b7abc5a396d (patch)
tree2a00c82e79f64e6873e8757e2ce5e47059cfb3c4 /gio/gdbusprivate.c
parentfa671dc5e28369c50aaef525c6980803a9946471 (diff)
Don't leak the FD list
==6793== 32 (24 direct, 8 indirect) bytes in 1 blocks are definitely lost in loss record 780 of 1,423 ==6793== at 0x4005BDC: malloc (vg_replace_malloc.c:195) ==6793== by 0x4057094: g_malloc (gmem.c:134) ==6793== by 0x406F2D6: g_slice_alloc (gslice.c:836) ==6793== by 0x406F31B: g_slice_alloc0 (gslice.c:848) ==6793== by 0x413D5BB: g_type_create_instance (gtype.c:1867) ==6793== by 0x412372A: g_object_constructor (gobject.c:1482) ==6793== by 0x4122E1D: g_object_newv (gobject.c:1266) ==6793== by 0x4122B93: g_object_new (gobject.c:1178) ==6793== by 0x41DB582: g_unix_fd_list_new_from_array (gunixfdlist.c:191) ==6793== by 0x421BFD6: _g_dbus_worker_do_read_cb (gdbusprivate.c:590) Bug #628329.
Diffstat (limited to 'gio/gdbusprivate.c')
-rw-r--r--gio/gdbusprivate.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gio/gdbusprivate.c b/gio/gdbusprivate.c
index ccce66ef0..6d1a71de6 100644
--- a/gio/gdbusprivate.c
+++ b/gio/gdbusprivate.c
@@ -717,6 +717,7 @@ _g_dbus_worker_do_read_cb (GInputStream *input_stream,
if (worker->read_fd_list != NULL)
{
g_dbus_message_set_unix_fd_list (message, worker->read_fd_list);
+ g_object_unref (worker->read_fd_list);
worker->read_fd_list = NULL;
}
#endif