mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-01-07 23:00:19 +01:00
settings: simplify settings object registration
And fix a leak of the D-Bus manager too.
This commit is contained in:
parent
e5c5622626
commit
26327e7646
1 changed files with 6 additions and 22 deletions
|
|
@ -1215,27 +1215,6 @@ nm_sysconfig_settings_device_removed (NMSysconfigSettings *self, NMDevice *devic
|
|||
remove_connection (self, NM_SYSCONFIG_CONNECTION (connection), TRUE);
|
||||
}
|
||||
|
||||
static void
|
||||
export_sysconfig (NMSysconfigSettings *self)
|
||||
{
|
||||
NMSysconfigSettingsPrivate *priv;
|
||||
DBusGConnection *bus;
|
||||
|
||||
g_return_if_fail (self != NULL);
|
||||
g_return_if_fail (NM_IS_SYSCONFIG_SETTINGS (self));
|
||||
|
||||
priv = NM_SYSCONFIG_SETTINGS_GET_PRIVATE (self);
|
||||
|
||||
/* Don't allow exporting twice */
|
||||
g_return_if_fail (priv->exported == FALSE);
|
||||
|
||||
bus = nm_dbus_manager_get_connection (nm_dbus_manager_get ());
|
||||
dbus_g_connection_register_g_object (bus,
|
||||
NM_DBUS_PATH_SETTINGS,
|
||||
G_OBJECT (self));
|
||||
priv->exported = TRUE;
|
||||
}
|
||||
|
||||
NMSysconfigSettings *
|
||||
nm_sysconfig_settings_new (const char *config_file,
|
||||
const char *plugins,
|
||||
|
|
@ -1243,6 +1222,8 @@ nm_sysconfig_settings_new (const char *config_file,
|
|||
{
|
||||
NMSysconfigSettings *self;
|
||||
NMSysconfigSettingsPrivate *priv;
|
||||
NMDBusManager *dbus_mgr;
|
||||
DBusGConnection *bus;
|
||||
|
||||
self = g_object_new (NM_TYPE_SYSCONFIG_SETTINGS,
|
||||
NULL);
|
||||
|
|
@ -1262,7 +1243,10 @@ nm_sysconfig_settings_new (const char *config_file,
|
|||
unmanaged_specs_changed (NULL, self);
|
||||
}
|
||||
|
||||
export_sysconfig (self);
|
||||
dbus_mgr = nm_dbus_manager_get ();
|
||||
bus = nm_dbus_manager_get_connection (dbus_mgr);
|
||||
dbus_g_connection_register_g_object (bus, NM_DBUS_PATH_SETTINGS, G_OBJECT (self));
|
||||
g_object_unref (dbus_mgr);
|
||||
|
||||
return self;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue