fix: properly read 'XML_TYPE_OVERLAY_POLICY' (#3035)

This commit is contained in:
Connor Tumbleson 2023-03-25 07:14:38 -04:00 committed by GitHub
parent 603e52d1f8
commit d3c5813442
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -138,6 +138,9 @@ public class ARSCDecoder {
case Header.XML_TYPE_OVERLAY:
readOverlaySpec();
break;
case Header.XML_TYPE_OVERLAY_POLICY:
readOverlayPolicySpec();
break;
case Header.XML_TYPE_STAGED_ALIAS:
readStagedAliasSpec();
break;
@ -180,13 +183,11 @@ public class ARSCDecoder {
private void readOverlaySpec() throws AndrolibException, IOException {
checkChunkType(Header.XML_TYPE_OVERLAY);
String name = mIn.readNullEndedString(128, true);
String actor = mIn.readNullEndedString(128, true);
String name = mIn.readNullEndedString(256, true);
String actor = mIn.readNullEndedString(256, true);
LOGGER.fine(String.format("Overlay name: \"%s\", actor: \"%s\")", name, actor));
while(nextChunk().type == Header.XML_TYPE_OVERLAY_POLICY) {
readOverlayPolicySpec();
}
nextChunk();
}
private void readOverlayPolicySpec() throws AndrolibException, IOException {