diff --git a/gio/gapplicationimpl-dbus.c b/gio/gapplicationimpl-dbus.c index 6f02788a2..263001b8e 100644 --- a/gio/gapplicationimpl-dbus.c +++ b/gio/gapplicationimpl-dbus.c @@ -371,6 +371,7 @@ g_application_impl_attempt_primary (GApplicationImpl *impl, GApplicationFlags app_flags; GVariant *reply; guint32 rval; + GError *local_error = NULL; if (org_gtk_Application == NULL) { @@ -430,8 +431,14 @@ g_application_impl_attempt_primary (GApplicationImpl *impl, if (!app_class->dbus_register (impl->app, impl->session_bus, impl->object_path, - error)) - return FALSE; + &local_error)) + { + g_return_val_if_fail (local_error != NULL, FALSE); + g_propagate_error (error, g_steal_pointer (&local_error)); + return FALSE; + } + + g_return_val_if_fail (local_error == NULL, FALSE); if (impl->bus_name == NULL) {