From c239517384b8133dd31d2113773cdf3643fce73c Mon Sep 17 00:00:00 2001 From: Chris Coulson Date: Tue, 22 Jan 2013 16:25:12 +0000 Subject: Make sure we unref the GDBusMethodInvocation when not sending a reply --- libdbusmenu-glib/server.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'libdbusmenu-glib') diff --git a/libdbusmenu-glib/server.c b/libdbusmenu-glib/server.c index 1536e3c..757286e 100644 --- a/libdbusmenu-glib/server.c +++ b/libdbusmenu-glib/server.c @@ -1705,6 +1705,8 @@ bus_event (DbusmenuServer * server, GVariant * params, GDBusMethodInvocation * i } else { if (~g_dbus_message_get_flags (g_dbus_method_invocation_get_message (invocation)) & G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED) { g_dbus_method_invocation_return_value(invocation, NULL); + } else { + g_object_unref(invocation); } } @@ -1755,6 +1757,8 @@ bus_event_group (DbusmenuServer * server, GVariant * params, GDBusMethodInvocati if (gotone) { if (~g_dbus_message_get_flags (g_dbus_method_invocation_get_message (invocation)) & G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED) { g_dbus_method_invocation_return_value(invocation, g_variant_new_tuple(&errors, 1)); + } else { + g_object_unref(invocation); } } else { gchar * ids = g_variant_print(errors, FALSE); @@ -1867,6 +1871,8 @@ bus_about_to_show_group (DbusmenuServer * server, GVariant * params, GDBusMethod g_variant_builder_add_value(&tuple, errors); g_dbus_method_invocation_return_value(invocation, g_variant_builder_end(&tuple)); + } else { + g_object_unref(invocation); } } else { gchar * ids = g_variant_print(errors, FALSE); -- cgit v1.2.3