summaryrefslogtreecommitdiffstats
path: root/services/devicepolicy/java/com/android
diff options
context:
space:
mode:
authorJulia Reynolds <juliacr@google.com>2015-04-23 13:59:20 -0400
committerJulia Reynolds <juliacr@google.com>2015-04-24 17:35:16 -0400
commit6afa666c9f9c8d1e9eff85464230585dfef060bb (patch)
tree4704dbe40383ec95745cf19f6999121abd1cd352 /services/devicepolicy/java/com/android
parent5dbaefadd7c8939877290ee30b4de662230ce889 (diff)
downloadframeworks_base-6afa666c9f9c8d1e9eff85464230585dfef060bb.zip
frameworks_base-6afa666c9f9c8d1e9eff85464230585dfef060bb.tar.gz
frameworks_base-6afa666c9f9c8d1e9eff85464230585dfef060bb.tar.bz2
Only skip unrecognized tags.
This fixes policy loss seen on device reboot when device admins applied certain policies. Bug: 20516960 Change-Id: I6e2a3b8de610c00ea1a2edbb026523bfdc365775
Diffstat (limited to 'services/devicepolicy/java/com/android')
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java7
1 files changed, 1 insertions, 6 deletions
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
index eb9234a..a49dbde 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
@@ -771,8 +771,8 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
permittedInputMethods = readPackageList(parser, tag);
} else {
Slog.w(LOG_TAG, "Unknown admin tag: " + tag);
+ XmlUtils.skipCurrentTag(parser);
}
- XmlUtils.skipCurrentTag(parser);
}
}
@@ -1565,11 +1565,9 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
} else if ("failed-password-attempts".equals(tag)) {
policy.mFailedPasswordAttempts = Integer.parseInt(
parser.getAttributeValue(null, "value"));
- XmlUtils.skipCurrentTag(parser);
} else if ("password-owner".equals(tag)) {
policy.mPasswordOwner = Integer.parseInt(
parser.getAttributeValue(null, "value"));
- XmlUtils.skipCurrentTag(parser);
} else if ("active-password".equals(tag)) {
policy.mActivePasswordQuality = Integer.parseInt(
parser.getAttributeValue(null, "quality"));
@@ -1587,14 +1585,11 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
parser.getAttributeValue(null, "symbols"));
policy.mActivePasswordNonLetter = Integer.parseInt(
parser.getAttributeValue(null, "nonletter"));
- XmlUtils.skipCurrentTag(parser);
} else if (TAG_LOCK_TASK_COMPONENTS.equals(tag)) {
policy.mLockTaskPackages.add(parser.getAttributeValue(null, "name"));
- XmlUtils.skipCurrentTag(parser);
} else if (TAG_STATUS_BAR.equals(tag)) {
policy.mStatusBarEnabledState = Boolean.parseBoolean(
parser.getAttributeValue(null, ATTR_ENABLED));
- XmlUtils.skipCurrentTag(parser);
} else if (DO_NOT_ASK_CREDENTIALS_ON_BOOT_XML.equals(tag)) {
policy.doNotAskCredentialsOnBoot = true;
} else {