diff --git a/gio/gnetworkmonitornm.c b/gio/gnetworkmonitornm.c index 73e2ed609..d052716d2 100644 --- a/gio/gnetworkmonitornm.c +++ b/gio/gnetworkmonitornm.c @@ -244,6 +244,7 @@ g_network_monitor_nm_initable_init (GInitable *initable, GNetworkMonitorNM *nm = G_NETWORK_MONITOR_NM (initable); GDBusProxy *proxy; GInitableIface *parent_iface; + gchar *name_owner = NULL; parent_iface = g_type_interface_peek_parent (G_NETWORK_MONITOR_NM_GET_INITABLE_IFACE (initable)); if (!parent_iface->init (initable, cancellable, error)) @@ -260,6 +261,16 @@ g_network_monitor_nm_initable_init (GInitable *initable, if (!proxy) return FALSE; + name_owner = g_dbus_proxy_get_name_owner (proxy); + + if (!name_owner) + { + g_object_unref (proxy); + return FALSE; + } + + g_free (name_owner); + /* Verify it has the PrimaryConnection and Connectivity properties */ if (!has_property (proxy, "Connectivity")) {