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
diff --git a/services/core/java/com/android/server/am/PendingIntentRecord.java b/services/core/java/com/android/server/am/PendingIntentRecord.java
index 550c37a..483fec6 100644
--- a/services/core/java/com/android/server/am/PendingIntentRecord.java
+++ b/services/core/java/com/android/server/am/PendingIntentRecord.java
@@ -219,6 +219,9 @@
     }
 
     public void unregisterCancelListenerLocked(IResultReceiver receiver) {
+        if (mCancelCallbacks == null) {
+            return; // Already unregistered or detached.
+        }
         mCancelCallbacks.unregister(receiver);
         if (mCancelCallbacks.getRegisteredCallbackCount() <= 0) {
             mCancelCallbacks = null;