Merge "[DO NOT MERGE] Fix NPE caused by misplaced parenthesis." into nyc-dev
am: 36a1cc6

* commit '36a1cc6c86f8e3658c8b45bfacb8f7ad07221912':
  [DO NOT MERGE] Fix NPE caused by misplaced parenthesis.

Change-Id: Ib20f930f8ab801ba1d1d8b965e380329988086eb
diff --git a/InCallUI/src/com/android/incallui/CallCardPresenter.java b/InCallUI/src/com/android/incallui/CallCardPresenter.java
index 3e3926b..d0762fd 100644
--- a/InCallUI/src/com/android/incallui/CallCardPresenter.java
+++ b/InCallUI/src/com/android/incallui/CallCardPresenter.java
@@ -249,7 +249,6 @@
                 Call.areSameNumber(mPrimary, primary));
         final boolean secondaryChanged = !(Call.areSame(mSecondary, secondary) &&
                 Call.areSameNumber(mSecondary, secondary));
-        final boolean shouldShowCallSubject = shouldShowCallSubject(mPrimary);
 
         mSecondary = secondary;
         Call previousPrimary = mPrimary;
@@ -262,9 +261,8 @@
         // Refresh primary call information if either:
         // 1. Primary call changed.
         // 2. The call's ability to manage conference has changed.
-        if (mPrimary != null && (primaryChanged ||
-                ui.isManageConferenceVisible() != shouldShowManageConference()) ||
-                ui.isCallSubjectVisible() != shouldShowCallSubject) {
+        // 3. The call subject should be shown or hidden.
+        if (shouldRefreshPrimaryInfo(primaryChanged, ui, shouldShowCallSubject(mPrimary))) {
             // primary call has changed
             if (previousPrimary != null) {
                 //clear progess spinner (if any) related to previous primary call
@@ -402,6 +400,16 @@
         updatePrimaryDisplayInfo();
     }
 
+    private boolean shouldRefreshPrimaryInfo(boolean primaryChanged, CallCardUi ui,
+            boolean shouldShowCallSubject) {
+        if (mPrimary == null) {
+            return false;
+        }
+        return primaryChanged ||
+                ui.isManageConferenceVisible() != shouldShowManageConference() ||
+                ui.isCallSubjectVisible() != shouldShowCallSubject;
+    }
+
     private String getSubscriptionNumber() {
         // If it's an emergency call, and they're not populating the callback number,
         // then try to fall back to the phone sub info (to hopefully get the SIM's