mirror of
https://github.com/revanced/ARSCLib.git
synced 2025-05-01 06:34:26 +02:00
fix: encode unknown hex reference id
This commit is contained in:
parent
cf7befd92a
commit
3f7dc3bf9f
@ -99,8 +99,12 @@ class XMLValuesEncoderAttr extends XMLValuesEncoderBag{
|
||||
for(int i=0;i<count;i++){
|
||||
XMLElement child=element.getChildAt(i);
|
||||
|
||||
int resourceId=materials.resolveLocalResourceId("id",
|
||||
child.getAttributeValue("name"));
|
||||
String name = child.getAttributeValue("name");
|
||||
int resourceId = decodeUnknownAttributeHex(name);
|
||||
if(resourceId==0){
|
||||
resourceId=materials.resolveLocalResourceId("id",
|
||||
name);
|
||||
}
|
||||
|
||||
ValueDecoder.EncodeResult encodeResult =
|
||||
ValueDecoder.encodeHexOrInt(child.getTextContent());
|
||||
@ -128,4 +132,14 @@ class XMLValuesEncoderAttr extends XMLValuesEncoderBag{
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
private int decodeUnknownAttributeHex(String name){
|
||||
if(name.length()==0||name.charAt(0)!='@'){
|
||||
return 0;
|
||||
}
|
||||
name=name.substring(1);
|
||||
if(!ValueDecoder.isHex(name)){
|
||||
return 0;
|
||||
}
|
||||
return ValueDecoder.parseHex(name);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user