mirror of
https://github.com/SuspiciousActivity/ProGuard-Unmapper.git
synced 2026-08-13 18:17:44 +00:00
Fixed some bugs
This commit is contained in:
1 parent
46cd6de355
commit
5a077134a5
2 files changed
+14
-5
No files matched your search
@@ -288,7 +288,7 @@ public class ClassNodeRemapper {
|
||||
private void remapInstruction(String clazz, AbstractInsnNode n) {
|
||||
if (FieldInsnNode.class.isInstance(n)) {
|
||||
FieldInsnNode node = (FieldInsnNode) n;
|
||||
node.name = getOldMemberName(new MemberData(clazz, node.desc, node.name));
|
||||
node.name = getOldMemberName(new MemberData(node.owner, node.desc, node.name));
|
||||
node.desc = getOldMemberFieldDesc(node.desc);
|
||||
node.owner = getOldClassName(node.owner);
|
||||
} else if (FrameNode.class.isInstance(n)) {
|
||||
@@ -360,7 +360,7 @@ public class ClassNodeRemapper {
|
||||
}
|
||||
} else if (MethodInsnNode.class.isInstance(n)) {
|
||||
MethodInsnNode node = (MethodInsnNode) n;
|
||||
node.name = getOldMemberName(new MemberData(clazz, node.desc, node.name));
|
||||
node.name = getOldMemberName(new MemberData(node.owner, node.desc, node.name));
|
||||
node.desc = getOldMemberMethodDesc(node.desc);
|
||||
node.owner = getOldClassName(node.owner);
|
||||
} else if (TypeInsnNode.class.isInstance(n)) {
|
||||
|
||||
@@ -110,11 +110,20 @@ public class MappingReader {
|
||||
}
|
||||
|
||||
private String getOldClassName(String name) {
|
||||
int arrayCount = 0;
|
||||
int arrayIdx = name.lastIndexOf('[');
|
||||
while (arrayIdx >= 0) {
|
||||
arrayCount++;
|
||||
name = name.substring(0, arrayIdx);
|
||||
arrayIdx = name.lastIndexOf('[');
|
||||
}
|
||||
name = name.replace('.', '/');
|
||||
String old = internalReversedClassMappings.get(name);
|
||||
if (old != null)
|
||||
return old;
|
||||
return name;
|
||||
if (old == null)
|
||||
old = name;
|
||||
for (int i = 0; i < arrayCount; i++)
|
||||
old += "[]";
|
||||
return old;
|
||||
}
|
||||
|
||||
private String convertTypeToByteCode(String type) {
|
||||
|
||||
Reference in new issue
Block a user