Fix up runtime deobfuscation. Working well now.

This commit is contained in:
Christian 2013-03-02 10:46:32 -05:00
parent 429dfc3d3d
commit 3a2d167885
3 changed files with 15 additions and 10 deletions

View File

@ -215,7 +215,7 @@
<antcall target="writeversion"/> <antcall target="writeversion"/>
</target> </target>
<target name="build" depends="buildenvsetup,merge-client,merge-common,build-universal,build-source-pack,build-deobf-data" /> <target name="build" depends="buildenvsetup,merge-client,merge-common,build-deobf-data,build-universal,build-source-pack" />
<target name="jenkinsbuild" depends="buildenvsetup,jenkinsfmldecompile,patch,build"/> <target name="jenkinsbuild" depends="buildenvsetup,jenkinsfmldecompile,patch,build"/>

View File

@ -144,7 +144,7 @@ public class FMLDeobfuscatingRemapper extends Remapper {
@Override @Override
public String mapFieldName(String owner, String name, String desc) public String mapFieldName(String owner, String name, String desc)
{ {
if (classNameBiMap == null) if (classNameBiMap == null || classNameBiMap.isEmpty())
{ {
return name; return name;
} }
@ -155,7 +155,7 @@ public class FMLDeobfuscatingRemapper extends Remapper {
@Override @Override
public String map(String typeName) public String map(String typeName)
{ {
if (classNameBiMap == null) if (classNameBiMap == null || classNameBiMap.isEmpty())
{ {
return typeName; return typeName;
} }
@ -177,7 +177,7 @@ public class FMLDeobfuscatingRemapper extends Remapper {
@Override @Override
public String mapMethodName(String owner, String name, String desc) public String mapMethodName(String owner, String name, String desc)
{ {
if (classNameBiMap==null) if (classNameBiMap==null || classNameBiMap.isEmpty())
{ {
return name; return name;
} }
@ -229,7 +229,7 @@ public class FMLDeobfuscatingRemapper extends Remapper {
} }
public void mergeSuperMaps(String name, String superName, String[] interfaces) public void mergeSuperMaps(String name, String superName, String[] interfaces)
{ {
if (classNameBiMap == null) if (classNameBiMap == null || classNameBiMap.isEmpty())
{ {
return; return;
} }

View File

@ -42,16 +42,21 @@ public class RelaunchLibraryManager
try try
{ {
// Are we in a 'decompiled' environment? // Are we in a 'decompiled' environment?
actualClassLoader.getClassBytes("net.minecraft.world.World"); byte[] bs = actualClassLoader.getClassBytes("net.minecraft.world.World");
FMLRelaunchLog.info("Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation"); if (bs != null)
deobfuscatedEnvironment = true; {
FMLRelaunchLog.info("Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation");
deobfuscatedEnvironment = true;
}
} }
catch (IOException e1) catch (IOException e1)
{ {
FMLRelaunchLog.fine("Enabling runtime deobfuscation");
deobfuscatedEnvironment = false;
} }
if (!deobfuscatedEnvironment)
{
FMLRelaunchLog.fine("Enabling runtime deobfuscation");
}
pluginLocations = new HashMap<IFMLLoadingPlugin, File>(); pluginLocations = new HashMap<IFMLLoadingPlugin, File>();
loadPlugins = new ArrayList<IFMLLoadingPlugin>(); loadPlugins = new ArrayList<IFMLLoadingPlugin>();
libraries = new ArrayList<ILibrarySet>(); libraries = new ArrayList<ILibrarySet>();