Re: [PATCH] Fix signal watch when a service name is given
From: Vinicius Gomes <hidden>
Date: 2010-02-17 00:34:47
Hi Luiz, On Tue, Feb 16, 2010 at 12:58 PM, Luiz Augusto von Dentz [off-list ref] wrote:
Hi Marcel, On Tue, Feb 16, 2010 at 5:37 PM, Marcel Holtmann [off-list ref] wr=
ote:
quoted
Hi Luiz,quoted
quoted
This should fix g_dbus_add_signal_watch when a service like org.bluez=
is given.
quoted
quoted
Updating since the last one was broken.I also think that in check_service() we actually have a missing call to dbus_pending_unref(). That would cause a memory leak.There is a call to =C2=A0dbus_pending_call_unref on check_service after dbus_pending_call_set_notify, which I took a look and seems correct but we have another problem there since we never cancel the pending call if the filter is unregister. Anyway there is a leak on service_reply where I don't call dbus_message_unref, so I will come up with another update soon.
This is fixed on obexd, but as far as I could see it is not (yet?) applied on the other users of gdbus. And, from what I tested the greater problem is that the timeout of the pending call would still trigger. This would cause libdbus to terminate the application, if libdbus was built with debug enabled, because one assert would fail (the message is "trying to remove an nonexistent timeout" or something like it). The timeout still triggering is the reason we don't see the pending call leaking.
-- Luiz Augusto von Dentz Computer Engineer -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth=
" in
the body of a message to majordomo@vger.kernel.org More majordomo info at =C2=A0http://vger.kernel.org/majordomo-info.html
Cheers, --=20 Vinicius Gomes INdT - Instituto Nokia de Tecnologia