Merge "Fix crash caused by opening dialogs with a dead activity"
diff --git a/java/com/android/dialer/interactions/PhoneNumberInteraction.java b/java/com/android/dialer/interactions/PhoneNumberInteraction.java
index 15c6ce8..5a6c346 100644
--- a/java/com/android/dialer/interactions/PhoneNumberInteraction.java
+++ b/java/com/android/dialer/interactions/PhoneNumberInteraction.java
@@ -82,7 +82,7 @@
  */
 public class PhoneNumberInteraction implements OnLoadCompleteListener<Cursor> {
 
-  private static final String TAG = PhoneNumberInteraction.class.getSimpleName();
+  static final String TAG = PhoneNumberInteraction.class.getSimpleName();
   /** The identifier for a permissions request if one is generated. */
   public static final int REQUEST_READ_CONTACTS = 1;
 
@@ -356,12 +356,19 @@
   }
 
   private void showDisambiguationDialog(ArrayList<PhoneItem> phoneList) {
+    // TODO(a bug): don't leak the activity
     final Activity activity = (Activity) mContext;
+    if (activity.isFinishing()) {
+      LogUtil.i("PhoneNumberInteraction.showDisambiguationDialog", "activity finishing");
+      return;
+    }
+
     if (activity.isDestroyed()) {
       // Check whether the activity is still running
       LogUtil.i("PhoneNumberInteraction.showDisambiguationDialog", "activity destroyed");
       return;
     }
+
     try {
       PhoneDisambiguationDialogFragment.show(
           activity.getFragmentManager(),