REAndroid / ARSCLib

Android binary resources read/write library
Apache License 2.0
220 stars 44 forks source link

Decompilation error array.xml #47

Closed kiber-io closed 1 year ago

kiber-io commented 1 year ago

When decompiling the attached apk, ARSCLib crashes with NPE :( From what I was able to understand - ARSCLib uses BagDecoderCommon instead of BarDecoderArray when processing arrays.xml Stacktrace:

java.lang.NullPointerException: Cannot invoke "String.indexOf(int)" because "value" is null
        at com.android.org.kxml2.io.KXmlSerializer.attribute(KXmlSerializer.java:432)
        at com.reandroid.apk.xmldecoder.EntryWriterSerializer.attribute(EntryWriterSerializer.java:52)
        at com.reandroid.apk.xmldecoder.EntryWriterSerializer.attribute(EntryWriterSerializer.java:23)
        at com.reandroid.apk.xmldecoder.BagDecoderCommon.decode(BagDecoderCommon.java:52)
        at com.reandroid.apk.xmldecoder.BagDecoderCommon.decode(BagDecoderCommon.java:24)
        at com.reandroid.apk.xmldecoder.DecoderResTableEntryMap.decode(DecoderResTableEntryMap.java:39)
        at com.reandroid.apk.xmldecoder.XMLEntryDecoder.decode(XMLEntryDecoder.java:61)
        at com.reandroid.apk.xmldecoder.XMLEntryDecoder.decode(XMLEntryDecoder.java:87)
        at com.reandroid.apk.xmldecoder.XMLEntryDecoderSerializer.decode(XMLEntryDecoderSerializer.java:56)
        at com.reandroid.apk.xmldecoder.XMLEntryDecoderSerializer.decodeUniqueConfigs(XMLEntryDecoderSerializer.java:50)
        at com.reandroid.apk.xmldecoder.XMLEntryDecoderSerializer.decode(XMLEntryDecoderSerializer.java:42)
        at com.reandroid.apk.ApkModuleXmlDecoder.decodeValues(ApkModuleXmlDecoder.java:298)
        at com.reandroid.apk.ApkModuleXmlDecoder.decodeValues(ApkModuleXmlDecoder.java:294)
        at com.reandroid.apk.ApkModuleXmlDecoder.decodeValues(ApkModuleXmlDecoder.java:282)
        at com.reandroid.apk.ApkModuleXmlDecoder.decodeResourceTable(ApkModuleXmlDecoder.java:63)
        at com.reandroid.apk.ApkModuleDecoder.decode(ApkModuleDecoder.java:48)

Version: 1.2.0 APK: https://drive.google.com/file/d/1Osi6k_DRKK7D8a_X9v5ZzHRespn2UDPt/view?usp=sharing

REAndroid commented 1 year ago

Fixed on f9a01e9

kiber-io commented 1 year ago

you are excellent!