summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErnestas Kulik <ernestask@src.gnome.org>2016-10-23 17:54:46 +0300
committerErnestas Kulik <ernestask@src.gnome.org>2016-12-18 14:32:31 +0200
commite2f75d068edfa4bec398131c6f141812cac4b3a6 (patch)
tree203504f2bcc2f0d80987c8e0dbc7e5b92584cf65
parentce9b7febd09d474dee82ddeaf06efb889323bb30 (diff)
downloadnautilus-e2f75d068edfa4bec398131c6f141812cac4b3a6.tar.gz
application: clear dbus_manager and search_provider after unregistering
The search provider gets unregistered twice when trying to run Nautilus with a primary instance active, resulting in the infamous warning: GLib-GIO-CRITICAL **: g_dbus_interface_skeleton_unexport: assertion 'interface_->priv->connections != NULL' failed The fix is clearing both dbus_manager and search_provider in nautilus_application_dbus_unregister() as opposed to during finalization. https://bugzilla.gnome.org/show_bug.cgi?id=773383
-rw-r--r--src/nautilus-application.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/nautilus-application.c b/src/nautilus-application.c
index 9c1a78cdf..f11dfe62d 100644
--- a/src/nautilus-application.c
+++ b/src/nautilus-application.c
@@ -604,9 +604,7 @@ nautilus_application_finalize (GObject *object)
g_clear_object (&priv->progress_handler);
g_clear_object (&priv->bookmark_list);
- g_clear_object (&priv->dbus_manager);
g_clear_object (&priv->fdb_manager);
- g_clear_object (&priv->search_provider);
g_list_free (priv->windows);
@@ -1288,11 +1286,13 @@ nautilus_application_dbus_unregister (GApplication *app,
if (priv->dbus_manager)
{
nautilus_dbus_manager_unregister (priv->dbus_manager);
+ g_clear_object (&priv->dbus_manager);
}
if (priv->search_provider)
{
nautilus_shell_search_provider_unregister (priv->search_provider);
+ g_clear_object (&priv->search_provider);
}
}