Cosimo Cecchi c5748328be gapplication: don't rely on cmdline being finalized immediately
The GApplicationCommandLine DBus implementation currently calls
g_dbus_method_invocation_return_value() in its finalize() implementation
only, relying on the object being destroyed after g_object_unref() is
called on it inside g_application_impl_method_call().

While this is usually fine for C applications, when overriding the
command_line vfunc from language bindings, the binding might add extra
references to the object, which might not be released immediately - e.g.
because they're garbage collected, or possibly even leaked. The same
scenario could happen in a C application that decides to keep a
reference to the passed-in GApplicationCommandLine object.

To ensure the CommandLine DBus method always gets a reply after the
invocation of command_line in the primary instance, explicitly send the
message back before dropping our reference to the object.

https://bugzilla.gnome.org/show_bug.cgi?id=708042
2013-10-16 23:06:13 -04:00
..
2013-10-03 10:37:30 -04:00
2013-10-04 09:51:31 -04:00
2013-10-04 22:08:36 +02:00
2012-12-12 15:20:22 +01:00
2012-02-02 16:22:42 +01:00
2013-06-30 10:32:18 +02:00
2013-02-15 05:39:20 -05:00
2013-04-21 16:25:15 -04:00
2012-07-03 21:14:41 -04:00
2013-05-25 23:15:36 -04:00
2013-06-23 14:15:05 +02:00
2013-04-21 16:31:14 -04:00
2013-02-04 22:35:29 -05:00
2012-11-28 00:58:03 -05:00
2013-04-21 16:31:14 -04:00
2013-07-11 12:35:45 -04:00
2011-06-07 08:55:31 +08:00
2013-10-04 09:51:31 -04:00
2012-11-29 16:29:47 -03:00
2011-02-08 10:05:00 -05:00
2012-12-12 15:20:22 +01:00
2011-02-08 10:05:00 -05:00
2012-08-19 02:21:02 -04:00
2012-08-19 02:21:02 -04:00
2013-07-11 12:35:45 -04:00
2013-07-11 12:35:45 -04:00
2011-06-04 18:48:19 -04:00
2012-01-13 17:12:57 +01:00
2012-12-29 00:22:34 -05:00
2011-08-29 14:49:32 -04:00
2013-10-04 09:51:31 -04:00
2011-10-16 21:41:15 -04:00
2013-06-30 10:32:18 +02:00
2013-03-26 10:51:48 +01:00
2011-10-02 22:33:10 -04:00
2013-04-21 16:31:14 -04:00
2012-07-03 21:14:41 -04:00
2012-11-15 14:19:06 -05:00
2012-08-18 23:15:58 -04:00