mirror of
https://github.com/revanced/Apktool.git
synced 2024-12-12 13:57:46 +01:00
fix: fallback to raw decoder if xml decoder failed
- prevents injection of false value
This commit is contained in:
parent
a5cfe41a8f
commit
7cd8946849
@ -119,6 +119,14 @@ public class ResFileDecoder {
|
|||||||
|
|
||||||
decode(inDir, inFileName, outDir, outFileName, "xml");
|
decode(inDir, inFileName, outDir, outFileName, "xml");
|
||||||
} catch (AndrolibException ex) {
|
} catch (AndrolibException ex) {
|
||||||
|
// If we got an error to decode XML, lets assume the file is in raw format.
|
||||||
|
// This is a large assumption, that might increase runtime, but will save us for situations where
|
||||||
|
// XSD files are AXML`d on aapt1, but left in plaintext in aapt2.
|
||||||
|
if (ex.getMessage().equalsIgnoreCase("Could not decode XML")) {
|
||||||
|
decode(inDir, inFileName, outDir, outFileName, "raw");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
LOGGER.log(Level.SEVERE, String.format(
|
LOGGER.log(Level.SEVERE, String.format(
|
||||||
"Could not decode file, replacing by FALSE value: %s",
|
"Could not decode file, replacing by FALSE value: %s",
|
||||||
inFileName), ex);
|
inFileName), ex);
|
||||||
|
Loading…
Reference in New Issue
Block a user