From 392f63d073f78e0abb488ead6e3f458a7bb0f818 Mon Sep 17 00:00:00 2001 From: jeff Date: Thu, 28 Aug 2014 00:56:31 -0400 Subject: fixed issue with method signatures in default package repackaged for 0.4.2 beta --- src/cuchaz/enigma/Constants.java | 2 +- src/cuchaz/enigma/mapping/MappingsReader.java | 30 +++++++++++++++++++++++---- 2 files changed, 27 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/cuchaz/enigma/Constants.java b/src/cuchaz/enigma/Constants.java index e407dbd..c863142 100644 --- a/src/cuchaz/enigma/Constants.java +++ b/src/cuchaz/enigma/Constants.java @@ -14,7 +14,7 @@ package cuchaz.enigma; public class Constants { public static final String Name = "Enigma"; - public static final String Version = "0.4.1 beta"; + public static final String Version = "0.4.2 beta"; public static final String Url = "http://www.cuchazinteractive.com/enigma"; public static final int MiB = 1024*1024; // 1 mebibyte public static final int KiB = 1024; // 1 kebibyte diff --git a/src/cuchaz/enigma/mapping/MappingsReader.java b/src/cuchaz/enigma/mapping/MappingsReader.java index 5570721..9f42b42 100644 --- a/src/cuchaz/enigma/mapping/MappingsReader.java +++ b/src/cuchaz/enigma/mapping/MappingsReader.java @@ -21,6 +21,7 @@ import com.google.common.collect.Queues; import cuchaz.enigma.Constants; import cuchaz.enigma.Util; +import cuchaz.enigma.mapping.SignatureUpdater.ClassNameUpdater; public class MappingsReader { @@ -152,12 +153,12 @@ public class MappingsReader private ClassMapping readClass( Scanner scanner ) { return new ClassMapping( - moveOutOfDefaultPackage( scanner.next(), Constants.NonePackage ), - moveOutOfDefaultPackage( scanner.next(), Constants.NonePackage ) + moveClassOutOfDefaultPackage( scanner.next(), Constants.NonePackage ), + moveClassOutOfDefaultPackage( scanner.next(), Constants.NonePackage ) ); } - private String moveOutOfDefaultPackage( String className, String newPackageName ) + private String moveClassOutOfDefaultPackage( String className, String newPackageName ) { ClassEntry classEntry = new ClassEntry( className ); if( classEntry.isInDefaultPackage() ) @@ -174,6 +175,27 @@ public class MappingsReader private MethodMapping readMethod( Scanner scanner ) { - return new MethodMapping( scanner.next(), scanner.next(), scanner.next(), scanner.next() ); + return new MethodMapping( + scanner.next(), scanner.next(), + moveSignatureOutOfDefaultPackage( scanner.next(), Constants.NonePackage ), + moveSignatureOutOfDefaultPackage( scanner.next(), Constants.NonePackage ) + ); + } + + private String moveSignatureOutOfDefaultPackage( String signature, final String newPackageName ) + { + return SignatureUpdater.update( signature, new ClassNameUpdater( ) + { + @Override + public String update( String className ) + { + ClassEntry classEntry = new ClassEntry( className ); + if( classEntry.isInDefaultPackage() ) + { + return newPackageName + "/" + className; + } + return className; + } + } ); } } -- cgit v1.2.3