Fix WTF in PendingIntentRecord.unregisterCancelListenerLocked()

It's possible that detachCancelListenersLocked() has just been called
when unregisterCancelListenerLocked() is called, so need a null check.

Change-Id: If4b18d713595b1cf1a29ba05a3736892b21931a4
Fixes: 78592185
Test: build
This commit is contained in:
Makoto Onuki
2018-04-25 16:31:05 -07:00
parent 5d8dfe17c8
commit 8a0319aca5

View File

@@ -219,6 +219,9 @@ final class PendingIntentRecord extends IIntentSender.Stub {
}
public void unregisterCancelListenerLocked(IResultReceiver receiver) {
if (mCancelCallbacks == null) {
return; // Already unregistered or detached.
}
mCancelCallbacks.unregister(receiver);
if (mCancelCallbacks.getRegisteredCallbackCount() <= 0) {
mCancelCallbacks = null;