This means it is likely that the problem lies with Avahi or in miscommunication between mt-daapd and Avahi. The problem seems to be this:
1) Avahi starts up.
2) mt-daapd connects and advertises its service.
3) DHCP assigns an IP to the system.
4) Avahi acknowledges the IP change.
5) [mt-daapd does not get readvertised on the right IP]
It happens to work when you restart Avahi because:
1) mt-daapd disconnects from the stopped service.
2) Avahi starts up and registers on the available IPs.
3) mt-daapd connects and advertises its service.
(The ordering of 2 and 3 is unsafe).
Or when you restart mt-daapd because:
1) mt-daapd connects and advertises its service.
The question of which daemon is at fault is not clear. I will take a closer look at the API tonight to determine which is the case, and plan an appropriate fix either way.
Thanks for testing that.
This means it is likely that the problem lies with Avahi or in miscommunication between mt-daapd and Avahi. The problem seems to be this:
1) Avahi starts up.
2) mt-daapd connects and advertises its service.
3) DHCP assigns an IP to the system.
4) Avahi acknowledges the IP change.
5) [mt-daapd does not get readvertised on the right IP]
It happens to work when you restart Avahi because:
1) mt-daapd disconnects from the stopped service.
2) Avahi starts up and registers on the available IPs.
3) mt-daapd connects and advertises its service.
(The ordering of 2 and 3 is unsafe).
Or when you restart mt-daapd because:
1) mt-daapd connects and advertises its service.
The question of which daemon is at fault is not clear. I will take a closer look at the API tonight to determine which is the case, and plan an appropriate fix either way.