Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c7b853c8 authored by padarshr's avatar padarshr
Browse files

Prevent SD-card from Un-mounting if cancelled during erase

If User cancels during the formatting stage
of "Erase SD Card", make sure you do not
Un-Mount the Volume.

CRs-Fixed: 616156

Change-Id: I8d7e1cf64917ee3628a1a682e2f3fb32443f3a2e
parent 22f95644
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -58,6 +58,8 @@ public class ExternalStorageFormatter extends Service

    private boolean mFactoryReset = false;
    private boolean mAlwaysReset = false;
    private boolean mIsCancelled = false;
    private boolean mIsFormatSuccess = false;

    StorageEventListener mStorageListener = new StorageEventListener() {
        @Override
@@ -128,6 +130,7 @@ public class ExternalStorageFormatter extends Service
    @Override
    public void onCancel(DialogInterface dialog) {

        mIsCancelled=true;
        IMountService mountService = getMountService();
        try {
            final StorageVolume[] volumes = mountService.getVolumeList();
@@ -194,6 +197,7 @@ public class ExternalStorageFormatter extends Service
                || Environment.MEDIA_MOUNTED_READ_ONLY.equals(status)) {
            updateProgressDialog(R.string.progress_unmounting);
            try {
                if(mIsCancelled && mIsFormatSuccess) return;
                final IMountService mountService = getMountService();
                final StorageVolume[] volumes = mountService.getVolumeList();
                final ArrayList<StorageVolume> physicalVols = StorageManager.getPhysicalExternalVolume(volumes);
@@ -250,6 +254,7 @@ public class ExternalStorageFormatter extends Service
                                extStoragePath = mStorageVolume.getPath();
                            }
                            mountService.formatVolume(extStoragePath);
                            mIsFormatSuccess = true;
                            success = true;
                        } catch (Exception e) {
                            Toast.makeText(ExternalStorageFormatter.this,