gio: avoid g_object_ref(NULL) in g_dbus_object_manager_client_finalize
authorSyncEvolution Nightly Testing <syncevolution@syncevolution.org>
Thu, 10 Jul 2014 09:52:26 +0000 (09:52 +0000)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 14 Jul 2014 12:35:11 +0000 (08:35 -0400)
When establishing a D-Bus connection failed, g_dbus_object_manager_client_finalize()
calls g_object_ref(manager->priv->connection) when that pointer is NULL,
which is considered and logged as error by glib.

https://bugzilla.gnome.org/show_bug.cgi?id=732984

gio/gdbusobjectmanagerclient.c

index e90ecb1..5755e74 100644 (file)
@@ -204,7 +204,8 @@ g_dbus_object_manager_client_finalize (GObject *object)
                                             manager);
       g_object_unref (manager->priv->control_proxy);
     }
                                             manager);
       g_object_unref (manager->priv->control_proxy);
     }
-  g_object_unref (manager->priv->connection);
+  if (manager->priv->connection != NULL)
+    g_object_unref (manager->priv->connection);
   g_free (manager->priv->object_path);
   g_free (manager->priv->name);
   g_free (manager->priv->name_owner);
   g_free (manager->priv->object_path);
   g_free (manager->priv->name);
   g_free (manager->priv->name_owner);