Unregister for notifications when we're done waiting.

Otherwise we're stuck with a strong refcount we can't remove:
1) We hold a sp<> to the Waiter
2) The waiter sends itself to hwservicemanager for notifications,
   hwservicemanager then holds an sp<> to the Waiter
3) We drop our sp<> and no longer have a strong ref,
   object remains alive until hwservicemanager drops it

To prevent this, explicitly unregister for notifications when
we're done waiting, so hwservicemanager will drop its strong
ref and the object can be safely destructed.

Bug: 73121807
Test: verified Waiter objects get destructed
Change-Id: I59403a3e962364e88378839b984f602fefeea3bb
1 file changed