about summary refs log tree commit diff
path: root/src/core/dns
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2022-12-03 22:59:09 +0100
committerMichael Biebl <biebl@debian.org>2022-12-03 22:59:09 +0100
commit06356c8ac470c1fa46f881b0598ec48a653e69ae (patch)
tree42e7714b4caedf4d23ebefd42d8d0afebc6f3569 /src/core/dns
parent78ecd0c8a4a337e38470f3fae5db74daf61ba86a (diff)
parent372b62c2c25eb1f2e811f84849e9b69c40ae6245 (diff)
Merge branch 'debian/master' into debian/bullseye-backports
Diffstat (limited to 'src/core/dns')
-rw-r--r--src/core/dns/nm-dns-manager.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/core/dns/nm-dns-manager.c b/src/core/dns/nm-dns-manager.c
index 1e54452a..a2fead3f 100644
--- a/src/core/dns/nm-dns-manager.c
+++ b/src/core/dns/nm-dns-manager.c
@@ -2039,8 +2039,15 @@ nm_dns_manager_set_ip_config(NMDnsManager         *self,
 
     if (!ip_data) {
         ip_data = _dns_config_ip_data_new(data, addr_family, source_tag, l3cd, ip_config_type);
-        if (!any_removed)
+        priv->ip_data_lst_need_sort = TRUE;
+        if (!any_removed) {
+            /* `any_removed` tracks whether we deleted any ip_data. If that happened,
+             * we already compared the old and new l3cds and set `changed` accordingly.
+             * Here we only need to set `changed` if we are adding a new ip_data without
+             * removing the old one.
+             */
             changed = TRUE;
+        }
     } else {
         ip_data->ip_config_type = ip_config_type;
         changed                 = TRUE;