summaryrefslogtreecommitdiff
path: root/PermissionController/src/com/android/permissioncontroller/permission
diff options
context:
space:
mode:
authorEvan Severson <evanseverson@google.com>2023-09-08 14:47:51 -0700
committerEvan Severson <evanseverson@google.com>2023-09-08 15:26:45 -0700
commitacc52962f1fd832de2ca58d2504ba82e6f5294e8 (patch)
treeae6f7b39c80b93f624470761801d6d2b2c323fae /PermissionController/src/com/android/permissioncontroller/permission
parent77732f84922009259c16bc4f5f293ba36d18a01c (diff)
downloadPermission-acc52962f1fd832de2ca58d2504ba82e6f5294e8.tar.gz
[BackupHelper] Break the loop when END_DOCUMENT is reached
`skipToEndOfTag` does not consider the case END_DOCUMENT when calling parser.next(); this causes an infinite loop. `skipToEndOfTag` is reached because we catch an exception due to a corrupted file causing an unexpected EOF and just continue to try to parse the file. Relnote: Break out of loop in during restore at END_DOCUMENT Bug: 299676312 Test: Push corrupted file force delayed restore by installing Change-Id: I3eed0447cee8205c1db0d6b3f103938a4a4bdc07
Diffstat (limited to 'PermissionController/src/com/android/permissioncontroller/permission')
-rw-r--r--PermissionController/src/com/android/permissioncontroller/permission/service/BackupHelper.java4
1 files changed, 2 insertions, 2 deletions
diff --git a/PermissionController/src/com/android/permissioncontroller/permission/service/BackupHelper.java b/PermissionController/src/com/android/permissioncontroller/permission/service/BackupHelper.java
index 9082b6931..bea110f70 100644
--- a/PermissionController/src/com/android/permissioncontroller/permission/service/BackupHelper.java
+++ b/PermissionController/src/com/android/permissioncontroller/permission/service/BackupHelper.java
@@ -136,8 +136,8 @@ public class BackupHelper {
case END_TAG:
numOpenTags--;
break;
- default:
- // ignore
+ case END_DOCUMENT:
+ return;
}
}
}