Author: axeld Date: 2010-08-17 13:43:22 +0200 (Tue, 17 Aug 2010) New Revision: 38179 Changeset: http://dev.haiku-os.org/changeset/38179 Modified: haiku/trunk/src/add-ons/kernel/network/stack/datalink.cpp Log: * Getting an address leaked a reference. This fixes that interfaces could not really be deleted (a reference of them was kept in memory). Modified: haiku/trunk/src/add-ons/kernel/network/stack/datalink.cpp =================================================================== --- haiku/trunk/src/add-ons/kernel/network/stack/datalink.cpp 2010-08-17 09:51:22 UTC (rev 38178) +++ haiku/trunk/src/add-ons/kernel/network/stack/datalink.cpp 2010-08-17 11:43:22 UTC (rev 38179) @@ -772,8 +772,12 @@ size_t maxLength = length - offsetof(ifreq, ifr_addr); - return fill_address(*interfaceAddress->AddressFor(option), + status_t status = fill_address( + *interfaceAddress->AddressFor(option), &((struct ifreq*)argument)->ifr_addr, maxLength); + + interfaceAddress->ReleaseReference(); + return status; } case B_SOCKET_COUNT_ALIASES: