From 2ea0c243fd3ceed585a514dd487ce04866c8aede Mon Sep 17 00:00:00 2001 From: gegy1000 Date: Sun, 20 May 2018 12:41:44 +0200 Subject: Fix anonymous class generation --- .../cuchaz/enigma/bytecode/translators/TranslationClassVisitor.java | 6 +++++- .../enigma/bytecode/translators/TranslationMethodVisitor.java | 2 -- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'src/main/java/cuchaz/enigma/bytecode') diff --git a/src/main/java/cuchaz/enigma/bytecode/translators/TranslationClassVisitor.java b/src/main/java/cuchaz/enigma/bytecode/translators/TranslationClassVisitor.java index 25d523f..b0d17b3 100644 --- a/src/main/java/cuchaz/enigma/bytecode/translators/TranslationClassVisitor.java +++ b/src/main/java/cuchaz/enigma/bytecode/translators/TranslationClassVisitor.java @@ -80,7 +80,11 @@ public class TranslationClassVisitor extends ClassVisitor { String childName = translatedName.substring(separatorIndex + 1); ClassEntry outerEntry = translator.getTranslatedClass(entryPool.getClass(parentName)); - super.visitInnerClass(translatedName, outerEntry.getName(), childName, translatedEntry.getAccess().getFlags()); + + // Anonymous classes do not specify an outer or inner name. As we do not translate from the given parameter, ignore if the input is null + String translatedOuterName = outerName != null ? outerEntry.getName() : null; + String translatedInnerName = innerName != null ? childName : null; + super.visitInnerClass(translatedName, translatedOuterName, translatedInnerName, translatedEntry.getAccess().getFlags()); } @Override diff --git a/src/main/java/cuchaz/enigma/bytecode/translators/TranslationMethodVisitor.java b/src/main/java/cuchaz/enigma/bytecode/translators/TranslationMethodVisitor.java index 09c106d..f3f7c48 100644 --- a/src/main/java/cuchaz/enigma/bytecode/translators/TranslationMethodVisitor.java +++ b/src/main/java/cuchaz/enigma/bytecode/translators/TranslationMethodVisitor.java @@ -108,8 +108,6 @@ public class TranslationMethodVisitor extends MethodVisitor { nameBuilder.append(nameIndex); } translatedName = nameBuilder.toString(); - } else { - System.out.println(); } super.visitLocalVariable(translatedName, translatedEntry.getDesc().toString(), translatedSignature, start, end, index); -- cgit v1.2.3