]> git.meshlink.io Git - catta/blobdiff - avahi-core/iface.c
add a bad bad joke
[catta] / avahi-core / iface.c
index f60224b5df2af6a27db685a3943f533aac51dd54..d5fe5b134644be589ef1d7e757f58a86d8eb979e 100644 (file)
@@ -47,7 +47,8 @@ static void update_address_rr(AvahiInterfaceMonitor *m, AvahiInterfaceAddress *a
     assert(m);
     assert(a);
 
-    if (m->list == LIST_DONE &&
+    if (a->interface->announcing &&
+        m->list == LIST_DONE &&
         avahi_interface_address_relevant(a) &&
         !remove_rrs &&
         m->server->config.publish_addresses &&
@@ -424,8 +425,8 @@ static void netlink_callback(AvahiNetlink *nl, struct nlmsghdr *n, void* userdat
             a = RTA_NEXT(a, l);
         }
 
-        update_hw_interface_rr(m, hw, 0);
         check_hw_interface_relevant(m, hw);
+        update_hw_interface_rr(m, hw, 0);
         
     } else if (n->nlmsg_type == RTM_DELLINK) {
         struct ifinfomsg *ifinfomsg = NLMSG_DATA(n);
@@ -509,8 +510,8 @@ static void netlink_callback(AvahiNetlink *nl, struct nlmsghdr *n, void* userdat
             free_address(m, addr);
         }
 
-        update_interface_rr(m, i, 0);
         check_interface_relevant(m, i);
+        update_interface_rr(m, i, 0);
         
     } else if (n->nlmsg_type == NLMSG_DONE) {