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.ConstantParameter;
import net.runelite.deob.deobfuscators.IllegalStateExceptions; import net.runelite.deob.deobfuscators.IllegalStateExceptions;
import net.runelite.deob.deobfuscators.MethodInliner; import net.runelite.deob.deobfuscators.MethodInliner;
import net.runelite.deob.deobfuscators.RenameUnique;
import net.runelite.deob.deobfuscators.RuntimeExceptions; import net.runelite.deob.deobfuscators.RuntimeExceptions;
import net.runelite.deob.deobfuscators.UnreachedCode; import net.runelite.deob.deobfuscators.UnreachedCode;
import net.runelite.deob.deobfuscators.UnusedClass; import net.runelite.deob.deobfuscators.UnusedClass;
@@ -107,7 +108,9 @@ public class Deob
// //
// new FieldInliner().run(group); // 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); //new UnusedClass().run(group);

View File

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