From: Christian Persch Date: Mon, 30 Aug 2010 13:53:49 +0000 (+0200) Subject: Don't leak the FD list X-Git-Tag: 2.25.15~11 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7a6f8bd3c34e5f5e20f6770d54406b7abc5a396d;p=platform%2Fupstream%2Fglib.git 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. --- diff --git a/gio/gdbusprivate.c b/gio/gdbusprivate.c index ccce66e..6d1a71d 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