diff --git a/java/com/android/contacts/common/model/dataitem/ImDataItem.java b/java/com/android/contacts/common/model/dataitem/ImDataItem.java
index 16b9fd0..b990255 100644
--- a/java/com/android/contacts/common/model/dataitem/ImDataItem.java
+++ b/java/com/android/contacts/common/model/dataitem/ImDataItem.java
@@ -22,6 +22,8 @@
 import android.provider.ContactsContract.CommonDataKinds.Im;
 import android.text.TextUtils;
 
+import java.util.Objects;
+
 /**
  * Represents an IM data item, wrapping the columns in {@link ContactsContract.CommonDataKinds.Im}.
  */
@@ -97,7 +99,7 @@
         return that.getProtocol() == Im.PROTOCOL_CUSTOM;
       }
       return true;
-    } else if (getProtocol() != that.getProtocol()) {
+    } else if (!Objects.equals(getProtocol(), that.getProtocol())) {
       return false;
     } else if (getProtocol() == Im.PROTOCOL_CUSTOM
         && !TextUtils.equals(getCustomProtocol(), that.getCustomProtocol())) {
diff --git a/java/com/android/dialer/callintent/CallIntent.java b/java/com/android/dialer/callintent/CallIntent.java
index ef7aff6..183eb16 100644
--- a/java/com/android/dialer/callintent/CallIntent.java
+++ b/java/com/android/dialer/callintent/CallIntent.java
@@ -152,8 +152,7 @@
             .setTimeSinceFirstClick(PerformanceReport.getTimeSinceFirstClick())
             .addAllUiActionsSinceAppLaunch(PerformanceReport.getActions())
             .addAllUiActionTimestampsSinceAppLaunch(PerformanceReport.getActionTimestamps())
-            .setStartingTabIndex(PerformanceReport.getStartingTabIndex())
-            .build();
+            .setStartingTabIndex(PerformanceReport.getStartingTabIndex());
         PerformanceReport.stopRecording();
       }
 
diff --git a/java/com/android/dialer/callintent/CallIntentBuilder.java b/java/com/android/dialer/callintent/CallIntentBuilder.java
index 7cc5891..b7f7d76 100644
--- a/java/com/android/dialer/callintent/CallIntentBuilder.java
+++ b/java/com/android/dialer/callintent/CallIntentBuilder.java
@@ -77,8 +77,7 @@
           .setTimeSinceFirstClick(PerformanceReport.getTimeSinceFirstClick())
           .addAllUiActionsSinceAppLaunch(PerformanceReport.getActions())
           .addAllUiActionTimestampsSinceAppLaunch(PerformanceReport.getActionTimestamps())
-          .setStartingTabIndex(PerformanceReport.getStartingTabIndex())
-          .build();
+          .setStartingTabIndex(PerformanceReport.getStartingTabIndex());
       PerformanceReport.stopRecording();
     }
 
