diff --git a/avahi-core/iface-linux.c b/avahi-core/iface-linux.c index da497bc..65e0a25 100644 --- a/avahi-core/iface-linux.c +++ b/avahi-core/iface-linux.c @@ -211,7 +211,7 @@ static void netlink_callback(AvahiNetlink *nl, struct nlmsghdr *n, void* userdat return; memcpy(rlocal.data.data, RTA_DATA(a), RTA_PAYLOAD(a)); - rlocal_valid = 1; + raddr_valid = 1; break; @@ -228,7 +228,7 @@ static void netlink_callback(AvahiNetlink *nl, struct nlmsghdr *n, void* userdat return; memcpy(raddr.data.data, RTA_DATA(a), RTA_PAYLOAD(a)); - raddr_valid = 1; + rlocal_valid = 1; break; diff --git a/avahi-core/iface-linux.c b/avahi-core/iface-linux.c index da497bc..a6f0a35 100644 --- a/avahi-core/iface-linux.c +++ b/avahi-core/iface-linux.c @@ -240,11 +240,11 @@ static void netlink_callback(AvahiNetlink *nl, struct nlmsghdr *n, void* userdat } /* If there was no adress attached to this message, let's quit. */ - if (rlocal_valid) - r = &rlocal; - else if (raddr_valid) + if (raddr_valid) r = &raddr; - else + else if (rlocal_valid) + r = &rlocal; + else return; if (n->nlmsg_type == RTM_NEWADDR) {