Ensure PacketHandler is removed from sockets

When MdnsMultinetworkSocketClient stops using a socket (when
isSocketActive starts returning false), the packet handler should be
removed from that socket. The code only removed it from the
mSocketPacketHandlers map without clearing it from the socket.

This caused packets to be handled potentially many times, affecting
performance.

Bug: 406623719
Bug: 408324621
Test: atest
Flag: EXEMPT bugfix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b5fbc0143af3409c5c8c660c3ecb34d4e964efdb)
Merged-In: I3d1117a4b847f3b95a01fc8a5997a53655ef608a
Change-Id: I3d1117a4b847f3b95a01fc8a5997a53655ef608a
2 files changed