Only onsider non static methods in fieldmover, note why fieldmover is broken

This commit is contained in:
Adam
2015-08-22 14:58:21 -04:00
parent 8e487a3567
commit 8ff2f4776a
2 changed files with 5 additions and 2 deletions

View File

@@ -18,6 +18,7 @@ import java.util.jar.Manifest;
import net.runelite.deob.deobfuscators.ConstantParameter;
import net.runelite.deob.deobfuscators.IllegalStateExceptions;
import net.runelite.deob.deobfuscators.MethodInliner;
import net.runelite.deob.deobfuscators.RenameUnique;
import net.runelite.deob.deobfuscators.RuntimeExceptions;
import net.runelite.deob.deobfuscators.UnreachedCode;
import net.runelite.deob.deobfuscators.UnusedClass;
@@ -107,7 +108,9 @@ public class Deob
//
// new FieldInliner().run(group);
new FieldMover().run(group);
// XXX this is broken because when moving clinit around, some fields can depend on other fields
// (like multianewarray)
//new FieldMover().run(group);
//new UnusedClass().run(group);

View File

@@ -69,7 +69,7 @@ public class FieldMover implements Deobfuscator
if (fi instanceof PutStatic)
clinits.put(field, (PutStatic) fi);
}
else
else if (!m.isStatic()) // I think non static methods are always right?
{
if (fields.containsKey(field))
{