summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Pavel Grafov <pgrafov@google.com> 2024-04-16 18:28:16 +0100
committer Pavel Grafov <pgrafov@google.com> 2024-04-17 16:15:43 +0000
commitaaa86cdfb79003fd66aae1132b9c06cfe80d7d08 (patch)
treeb7d4298b28eef0af373ccf1cd4dbcec7b8361ac7
parent993b89ab0f201c2c970216c08315ab7524f6b152 (diff)
Ensure device_owners2.xml is always written.
Bug: 335232744 Test: Manual, upgrading from T-QPR3 Change-Id: I7a7dba56f2951e7e3699b19d2517d198dc8f9d35
-rw-r--r--core/java/android/app/admin/flags/flags.aconfig10
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/OwnersData.java3
2 files changed, 12 insertions, 1 deletions
diff --git a/core/java/android/app/admin/flags/flags.aconfig b/core/java/android/app/admin/flags/flags.aconfig
index 6a07484eebc6..0eb67d16436c 100644
--- a/core/java/android/app/admin/flags/flags.aconfig
+++ b/core/java/android/app/admin/flags/flags.aconfig
@@ -228,6 +228,16 @@ flag {
}
flag {
+ name: "always_persist_do"
+ namespace: "enterprise"
+ description: "Always write device_owners2.xml so that migration flags aren't lost"
+ bug: "335232744"
+ metadata {
+ purpose: PURPOSE_BUGFIX
+ }
+}
+
+flag {
name: "is_recursive_required_app_merging_enabled"
namespace: "enterprise"
description: "Guards a new flow for recursive required enterprise app list merging"
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/OwnersData.java b/services/devicepolicy/java/com/android/server/devicepolicy/OwnersData.java
index 42ac998bf96c..d02cfee72aa2 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/OwnersData.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/OwnersData.java
@@ -357,7 +357,8 @@ class OwnersData {
@Override
boolean shouldWrite() {
- return (mDeviceOwner != null) || (mSystemUpdatePolicy != null)
+ return Flags.alwaysPersistDo()
+ || (mDeviceOwner != null) || (mSystemUpdatePolicy != null)
|| (mSystemUpdateInfo != null);
}