From 950bba6cd12731ef67b184c1bf928139bf008ab2 Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Tue, 15 May 2018 19:13:32 +0100 Subject: Add support for MTH-ARG in tiny mappings reader --- src/main/java/cuchaz/enigma/mapping/MappingsTinyReader.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/cuchaz/enigma/mapping/MappingsTinyReader.java b/src/main/java/cuchaz/enigma/mapping/MappingsTinyReader.java index dfe9e88a..befc92ab 100644 --- a/src/main/java/cuchaz/enigma/mapping/MappingsTinyReader.java +++ b/src/main/java/cuchaz/enigma/mapping/MappingsTinyReader.java @@ -70,6 +70,10 @@ public class MappingsTinyReader { classMapping = classMappingMap.computeIfAbsent(parts[1], k -> new ClassMapping(parts[1])); classMapping.addMethodMapping(readMethod(parts)); break; + case "MTH-ARG": + classMapping = classMappingMap.computeIfAbsent(parts[1], k -> new ClassMapping(parts[1])); + classMapping.setArgumentName(parts[3], new Signature(parts[2]), Integer.parseInt(parts[4]), parts[5]); + break; default: throw new MappingParseException(file, lineNumber, "Unknown token '" + token + "' !"); } -- cgit v1.2.3 From 5d23663b1c37b08c1a0a91cffc15e26b02e8d3d0 Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Wed, 16 May 2018 09:06:07 +0100 Subject: Fix method parameter info sometimes causing the exported class to become invalid. This fixes intelij not reading the class successfully, thus preventing it from being used. --- build.gradle | 2 +- src/main/java/cuchaz/enigma/bytecode/MethodParametersAttribute.java | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index 4669a2ac..c65ccca2 100644 --- a/build.gradle +++ b/build.gradle @@ -65,7 +65,7 @@ configurations { dependencies { compile 'com.google.guava:guava:21.+' - compile 'org.javassist:javassist:3.21.0-GA' + compile 'org.javassist:javassist:3.22.0-GA' compile 'org.bitbucket.mstrobel:procyon-compilertools:0.5.33.8-enigma' compile 'com.google.code.gson:gson:2.8.1' diff --git a/src/main/java/cuchaz/enigma/bytecode/MethodParametersAttribute.java b/src/main/java/cuchaz/enigma/bytecode/MethodParametersAttribute.java index 3f819abd..57d60fdb 100644 --- a/src/main/java/cuchaz/enigma/bytecode/MethodParametersAttribute.java +++ b/src/main/java/cuchaz/enigma/bytecode/MethodParametersAttribute.java @@ -35,8 +35,6 @@ public class MethodParametersAttribute extends AttributeInfo { for (String name : names) { if (name != null) { parameterNameIndices.add(constPool.addUtf8Info(name)); - } else { - parameterNameIndices.add(0); } } -- cgit v1.2.3