Merge "Disable MTE developer option if device config overrides it" into udc-dev am: c5054d5907
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/21548006 Change-Id: I33d87ecc4efe5ac2364f4068ecca4e19a0c4b17d Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -48,6 +48,9 @@ public class DevelopmentMemtagPreferenceController extends TogglePreferenceContr
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
|
if (MemtagHelper.isForcedOff() || MemtagHelper.isForcedOn()) {
|
||||||
|
return BasePreferenceController.DISABLED_DEPENDENT_SETTING;
|
||||||
|
}
|
||||||
return DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(mContext)
|
return DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(mContext)
|
||||||
&& SystemProperties.getBoolean("ro.arm64.memtag.bootctl_supported", false)
|
&& SystemProperties.getBoolean("ro.arm64.memtag.bootctl_supported", false)
|
||||||
? BasePreferenceController.AVAILABLE
|
? BasePreferenceController.AVAILABLE
|
||||||
|
@@ -25,14 +25,14 @@ import com.android.settings.core.BasePreferenceController;
|
|||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
|
||||||
public class MemtagHelper {
|
public class MemtagHelper {
|
||||||
private static boolean isForcedOff() {
|
public static boolean isForcedOff() {
|
||||||
return "force_off"
|
return "force_off"
|
||||||
.equals(
|
.equals(
|
||||||
SystemProperties.get(
|
SystemProperties.get(
|
||||||
"persist.device_config.memory_safety_native_boot.bootloader_override"));
|
"persist.device_config.memory_safety_native_boot.bootloader_override"));
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean isForcedOn() {
|
public static boolean isForcedOn() {
|
||||||
return "force_on"
|
return "force_on"
|
||||||
.equals(
|
.equals(
|
||||||
SystemProperties.get(
|
SystemProperties.get(
|
||||||
|
@@ -176,4 +176,16 @@ public class MemtagHelperTest {
|
|||||||
ShadowSystemProperties.override(mMemtagProperty, "memtag");
|
ShadowSystemProperties.override(mMemtagProperty, "memtag");
|
||||||
assertThat(MemtagHelper.getSummary()).isEqualTo(R.string.memtag_force_on);
|
assertThat(MemtagHelper.getSummary()).isEqualTo(R.string.memtag_force_on);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void isForcedOn_forceOnOverride_isTrue() {
|
||||||
|
ShadowSystemProperties.override(mDeviceConfigOverride, "force_on");
|
||||||
|
assertThat(MemtagHelper.isForcedOn()).isTrue();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void isForcedOff_forceOffOverride_isTrue() {
|
||||||
|
ShadowSystemProperties.override(mDeviceConfigOverride, "force_off");
|
||||||
|
assertThat(MemtagHelper.isForcedOff()).isTrue();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user