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

Commit 77181e94 authored by Adrian Roos's avatar Adrian Roos
Browse files

Fix crash when changing encrypt with credential

Bug: 27173979
Change-Id: If8ef7a9342bcb1b0602791df1dc7634b3e980ee7
parent b6717805
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -292,7 +292,7 @@ public class ChooseLockGeneric extends SettingsActivity {
                }
            } else if (requestCode == CHOOSE_LOCK_REQUEST
                    || requestCode == ENABLE_ENCRYPTION_REQUEST) {
                if (resultCode != RESULT_CANCELED) {
                if (resultCode != RESULT_CANCELED || mForChangeCredRequiredForBoot) {
                    getActivity().setResult(resultCode, data);
                    finish();
                }
+5 −1
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.settings;

import android.app.Fragment;
import android.content.Context;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
@@ -70,7 +71,10 @@ abstract class SaveChosenLockWorkerBase extends Fragment {
        mUtils.setSeparateProfileChallengeEnabled(mUserId, true);
        mWasSecureBefore = mUtils.isSecure(mUserId);

        if (UserManager.get(getContext()).getUserInfo(mUserId).isPrimary()) {
        Context context = getContext();
        // If context is null, we're being invoked to change the setCredentialRequiredToDecrypt,
        // and we made sure that this is the primary user already.
        if (context == null || UserManager.get(context).getUserInfo(mUserId).isPrimary()) {
            mUtils.setCredentialRequiredToDecrypt(credentialRequired);
        }

+1 −0
Original line number Diff line number Diff line
@@ -1054,6 +1054,7 @@ public class SecuritySettings extends SettingsPreferenceFragment
        static boolean canChangeRequireCredentialBeforeStartup(Context context) {
            DevicePolicyManager dpm = context.getSystemService(DevicePolicyManager.class);
            return UserManager.get(context).isAdminUser()
                    && UserManager.get(context).isPrimaryUser()
                    && LockPatternUtils.isDeviceEncryptionEnabled()
                    && !dpm.getDoNotAskCredentialsOnBoot();
        }