summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2019-07-17 12:22:11 +0200
committerThomas Haller <thaller@redhat.com>2019-07-17 12:22:25 +0200
commitbc29389e8e356bd5c5612d5ec57b4b67dae6b74c (patch)
treeaea553609a19d6fd215a8228f02ace243eb269a6
parentf1d24f5df2c19eec0e57fafbb11be1c8c3764118 (diff)
downloadNetworkManager-bc29389e8e356bd5c5612d5ec57b4b67dae6b74c.tar.gz
settings: fix wrong assertion in keyfiles _storages_consolidate()
The storage may also contain a tombstone, and have no connection to steal.
-rw-r--r--src/settings/plugins/keyfile/nms-keyfile-plugin.c1
-rw-r--r--src/settings/plugins/keyfile/nms-keyfile-storage.c3
2 files changed, 2 insertions, 2 deletions
diff --git a/src/settings/plugins/keyfile/nms-keyfile-plugin.c b/src/settings/plugins/keyfile/nms-keyfile-plugin.c
index d2e99ad012..de076c0122 100644
--- a/src/settings/plugins/keyfile/nms-keyfile-plugin.c
+++ b/src/settings/plugins/keyfile/nms-keyfile-plugin.c
@@ -516,7 +516,6 @@ _storages_consolidate (NMSKeyfilePlugin *self,
}
connection = nms_keyfile_storage_steal_connection (storage);
- nm_assert (NM_IS_CONNECTION (connection));
callback (NM_SETTINGS_PLUGIN (self),
NM_SETTINGS_STORAGE (storage),
diff --git a/src/settings/plugins/keyfile/nms-keyfile-storage.c b/src/settings/plugins/keyfile/nms-keyfile-storage.c
index 885553a86c..993aeb9a4f 100644
--- a/src/settings/plugins/keyfile/nms-keyfile-storage.c
+++ b/src/settings/plugins/keyfile/nms-keyfile-storage.c
@@ -55,7 +55,8 @@ NMConnection *
nms_keyfile_storage_steal_connection (NMSKeyfileStorage *self)
{
nm_assert (NMS_IS_KEYFILE_STORAGE (self));
- nm_assert (NM_IS_CONNECTION (self->connection));
+ nm_assert ( (!self->connection && self->is_tombstone)
+ || NM_IS_CONNECTION (self->connection));
return g_steal_pointer (&self->connection);
}