* Only actually call change_address() of the net_datalink_protocols if the

address actually changed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37928 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler
2010-08-05 13:27:31 +00:00
parent 715fed4479
commit 6b1e148824
@@ -969,6 +969,13 @@ Interface::_ChangeAddress(RecursiveLocker& locker, InterfaceAddress* address,
originalAddress) != B_OK)
oldAddress.ss_family = AF_UNSPEC;
// Test if anything changed for real
if (!address->domain->address_module->equal_addresses(originalAddress,
newAddress)) {
// Nothing to do
return B_OK;
}
// TODO: mark this address busy or call while holding the lock!
address->AcquireReference();
locker.Unlock();