mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-26 19:20:12 +01:00
libnm: avoid cloning buffer for nm_connection_get_settings() in nm_keyfile_write()
This commit is contained in:
parent
5aef93355f
commit
b0f4bb84bf
1 changed files with 9 additions and 7 deletions
|
|
@ -4083,10 +4083,9 @@ nm_keyfile_write(NMConnection * connection,
|
|||
nm_auto_unref_keyfile GKeyFile *keyfile = NULL;
|
||||
GError * local = NULL;
|
||||
KeyfileWriterInfo info;
|
||||
gs_free NMSetting **settings = NULL;
|
||||
guint n_settings = 0;
|
||||
guint i;
|
||||
guint j;
|
||||
NMSetting ** settings;
|
||||
int i;
|
||||
guint j;
|
||||
|
||||
g_return_val_if_fail(NM_IS_CONNECTION(connection), NULL);
|
||||
g_return_val_if_fail(!error || !*error, NULL);
|
||||
|
|
@ -4124,13 +4123,16 @@ nm_keyfile_write(NMConnection * connection,
|
|||
.user_data = user_data,
|
||||
};
|
||||
|
||||
settings = nm_connection_get_settings(connection, &n_settings);
|
||||
for (i = 0; i < n_settings; i++) {
|
||||
settings = _nm_connection_get_settings_arr(connection);
|
||||
for (i = 0; i < (int) _NM_META_SETTING_TYPE_NUM; i++) {
|
||||
NMSetting * setting = settings[nm_meta_setting_types_by_priority[i]];
|
||||
const NMSettInfoSetting *sett_info;
|
||||
NMSetting * setting = settings[i];
|
||||
const char * setting_name;
|
||||
const char * setting_alias;
|
||||
|
||||
if (!setting)
|
||||
continue;
|
||||
|
||||
sett_info = _nm_setting_class_get_sett_info(NM_SETTING_GET_CLASS(setting));
|
||||
|
||||
setting_name = sett_info->setting_class->setting_info->setting_name;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue