diff --git a/src/com/android/settings/MasterClearConfirm.java b/src/com/android/settings/MasterClearConfirm.java
index a3caf29..fb5c94c 100644
--- a/src/com/android/settings/MasterClearConfirm.java
+++ b/src/com/android/settings/MasterClearConfirm.java
@@ -23,6 +23,7 @@
 import android.os.AsyncTask;
 import android.os.Bundle;
 import android.os.UserManager;
+import android.provider.Settings;
 import android.service.persistentdata.PersistentDataBlockManager;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -62,8 +63,12 @@
             final PersistentDataBlockManager pdbManager = (PersistentDataBlockManager)
                     getActivity().getSystemService(Context.PERSISTENT_DATA_BLOCK_SERVICE);
 
-            if (pdbManager != null && !pdbManager.getOemUnlockEnabled()) {
-                // if OEM unlock is enabled, this will be wiped during FR process.
+            if (pdbManager != null && !pdbManager.getOemUnlockEnabled() &&
+                    Settings.Global.getInt(getActivity().getContentResolver(),
+                            Settings.Global.DEVICE_PROVISIONED, 0) != 0) {
+                // if OEM unlock is enabled, this will be wiped during FR process. If disabled, it
+                // will be wiped here, unless the device is still being provisioned, in which case
+                // the persistent data block will be preserved.
                 new AsyncTask<Void, Void, Void>() {
                     int mOldOrientation;
                     ProgressDialog mProgressDialog;
