diff --git a/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java b/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java
index 23f368f..57e253c 100644
--- a/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java
+++ b/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java
@@ -28,9 +28,11 @@
 import android.support.annotation.Nullable;
 import android.text.TextUtils;
 import com.android.contacts.common.preference.ContactsPreferences;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.searchfragment.common.Projections;
 import com.android.dialer.searchfragment.common.SearchCursor;
 import com.android.dialer.smartdial.SmartDialCursorLoader;
+import com.android.dialer.util.PermissionsUtil;
 
 /** Cursor Loader for CP2 contacts. */
 public final class SearchContactsCursorLoader extends CursorLoader {
@@ -80,6 +82,10 @@
 
   @Override
   public Cursor loadInBackground() {
+    if (!PermissionsUtil.hasContactsReadPermissions(getContext())) {
+      LogUtil.i("SearchContactsCursorLoader.loadInBackground", "Contacts permission denied.");
+      return null;
+    }
     return isRegularSearch ? regularSearchLoadInBackground() : dialpadSearchLoadInBackground();
   }
 
diff --git a/java/com/android/dialer/searchfragment/directories/DirectoriesCursorLoader.java b/java/com/android/dialer/searchfragment/directories/DirectoriesCursorLoader.java
index edf5f24..39c1187 100644
--- a/java/com/android/dialer/searchfragment/directories/DirectoriesCursorLoader.java
+++ b/java/com/android/dialer/searchfragment/directories/DirectoriesCursorLoader.java
@@ -25,6 +25,8 @@
 import android.os.Build.VERSION_CODES;
 import android.provider.ContactsContract;
 import android.support.annotation.Nullable;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.util.PermissionsUtil;
 import com.google.auto.value.AutoValue;
 import java.util.ArrayList;
 import java.util.List;
@@ -47,6 +49,15 @@
     super(context, getContentUri(), PROJECTION, null, null, ContactsContract.Directory._ID);
   }
 
+  @Override
+  public Cursor loadInBackground() {
+    if (!PermissionsUtil.hasContactsReadPermissions(getContext())) {
+      LogUtil.i("DirectoriesCursorLoader.loadInBackground", "Contacts permission denied.");
+      return null;
+    }
+    return super.loadInBackground();
+  }
+
   /**
    * Creates a complete list of directories from the data set loaded by this loader.
    *
