MessageQueue: dispose() from next()
Concurrent implementation was waiting until finalize() to dispose of
mPtr and drop it's reference to the native messagequeue. But finalize()
may not be run until much later. IpClientSignatureTest#testNoFdLeaks
was failing due to open fds which were a result of Looper being kept
around and not freed. So dispose() of our pointer and reference
from next() when we are quitting our MessageQueue. This closes any
epoll control fds immediately.
Bug: 407098224
Test: atest NetworkStackIntegrationTests:android.net.ip.IpClientSignatureTest
Test: atest MessageQueueTest
Flag: EXEMPT - bugfix
Change-Id: I7c885fa2cc5cbe16116d162e050e912783c66d01
2 files changed