diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 1bb1296..618676c 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -17,8 +17,8 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="com.android.dialer"
     coreApp="true"
-    android:versionCode="20305"
-    android:versionName="2.3.05">
+    android:versionCode="20306"
+    android:versionName="2.3.06">
 
     <uses-sdk
         android:minSdkVersion="23"
diff --git a/src/com/android/dialer/calllog/DefaultVoicemailNotifier.java b/src/com/android/dialer/calllog/DefaultVoicemailNotifier.java
index 635e874..ff91372 100644
--- a/src/com/android/dialer/calllog/DefaultVoicemailNotifier.java
+++ b/src/com/android/dialer/calllog/DefaultVoicemailNotifier.java
@@ -31,6 +31,7 @@
 import android.net.Uri;
 import android.provider.CallLog.Calls;
 import android.provider.ContactsContract.PhoneLookup;
+import android.telephony.PhoneNumberUtils;
 import android.text.TextUtils;
 import android.util.Log;
 
@@ -153,7 +154,7 @@
                     // Look it up in the database.
                     name = mNameLookupQuery.query(newCall.number);
                     if (TextUtils.isEmpty(name)) {
-                        name = newCall.number;
+                        name = PhoneNumberUtils.formatNumber(newCall.number, newCall.countryIso);
                     }
                 }
                 names.put(newCall.number, name);
diff --git a/src/com/android/dialer/list/BlockedListSearchFragment.java b/src/com/android/dialer/list/BlockedListSearchFragment.java
index 08a9c49..94036ae 100644
--- a/src/com/android/dialer/list/BlockedListSearchFragment.java
+++ b/src/com/android/dialer/list/BlockedListSearchFragment.java
@@ -15,6 +15,7 @@
  */
 package com.android.dialer.list;
 
+import android.app.Activity;
 import android.os.Bundle;
 import android.support.v7.app.ActionBar;
 import android.support.v7.app.AppCompatActivity;
@@ -182,7 +183,7 @@
                             number,
                             R.id.blocked_numbers_activity_container,
                             getFragmentManager(),
-                            null /* callback */);
+                            BlockedListSearchFragment.this);
                 } else {
                     Toast.makeText(getContext(), getString(R.string.alreadyBlocked, number),
                             Toast.LENGTH_SHORT).show();
@@ -199,7 +200,7 @@
 
     @Override
     public void onChangeFilteredNumberSuccess() {
-        BlockedNumbersSettingsActivity activity = (BlockedNumbersSettingsActivity) getActivity();
+        Activity activity = getActivity();
         if (activity == null) {
             return;
         }
