DO NOT MERGE Fix bitmap leaks in InCallUI

Fix the bitmap leaks in InCallUI that were a result of
StatusBarNotifier instances being retained across calls.

Bitmap -> StatusBarNotifier -> CallUpdateListenerMap ->
CallList

Bug: 25003292
Change-Id: I4f8695d7dfbc397b0fee0305a6f94e8d2e8e593f
diff --git a/InCallUI/src/com/android/incallui/StatusBarNotifier.java b/InCallUI/src/com/android/incallui/StatusBarNotifier.java
index d1509b8..76a95f1 100644
--- a/InCallUI/src/com/android/incallui/StatusBarNotifier.java
+++ b/InCallUI/src/com/android/incallui/StatusBarNotifier.java
@@ -117,6 +117,10 @@
      * @see #updateInCallNotification(InCallState,CallList)
      */
     private void cancelNotification() {
+        if (!TextUtils.isEmpty(mCallId)) {
+            CallList.getInstance().removeCallUpdateListener(mCallId, this);
+            mCallId = null;
+        }
         if (mCurrentNotification != NOTIFICATION_NONE) {
             Log.d(this, "cancelInCall()...");
             mNotificationManager.cancel(mCurrentNotification);
@@ -160,7 +164,7 @@
         final boolean isIncoming = (call.getState() == Call.State.INCOMING ||
                 call.getState() == Call.State.CALL_WAITING);
 
-        if (mCallId != null) {
+        if (!TextUtils.isEmpty(mCallId)) {
             CallList.getInstance().removeCallUpdateListener(mCallId, this);
         }
         mCallId = call.getId();