From a7cf9d399fcebdf7287b90313cdbd5d3be115dde Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Wed, 12 Feb 2025 10:42:25 +0100 Subject: [PATCH] keyfile: don't crash on failure to write The log statement ended up using wrong (always NULL) connection to get ID from. Fix. Resolves: https://issues.redhat.com/browse/RHEL-77157 --- .../settings/plugins/keyfile/nms-keyfile-plugin.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/core/settings/plugins/keyfile/nms-keyfile-plugin.c b/src/core/settings/plugins/keyfile/nms-keyfile-plugin.c index 1679cab674..681eef85a8 100644 --- a/src/core/settings/plugins/keyfile/nms-keyfile-plugin.c +++ b/src/core/settings/plugins/keyfile/nms-keyfile-plugin.c @@ -880,12 +880,11 @@ nms_keyfile_plugin_update_connection(NMSKeyfilePlugin *self, NMConnection **out_connection, GError **error) { - NMSKeyfilePluginPrivate *priv = NMS_KEYFILE_PLUGIN_GET_PRIVATE(self); - NMSKeyfileStorage *storage = NMS_KEYFILE_STORAGE(storage_x); - gs_unref_object NMConnection *connection_clone = NULL; - gs_unref_object NMConnection *reread = NULL; - gs_free char *full_filename = NULL; - gs_free_error GError *local = NULL; + NMSKeyfilePluginPrivate *priv = NMS_KEYFILE_PLUGIN_GET_PRIVATE(self); + NMSKeyfileStorage *storage = NMS_KEYFILE_STORAGE(storage_x); + gs_unref_object NMConnection *reread = NULL; + gs_free char *full_filename = NULL; + gs_free_error GError *local = NULL; struct timespec mtime; const char *previous_filename; gboolean reread_same; @@ -946,7 +945,7 @@ nms_keyfile_plugin_update_connection(NMSKeyfilePlugin *self, &local)) { _LOGW("commit: failure to write %s (%s) to \"%s\": %s", uuid, - nm_connection_get_id(connection_clone), + nm_connection_get_id(connection), previous_filename, local->message); g_propagate_error(error, g_steal_pointer(&local));