Issues #78,#81,#82 Fixed deobfuscation, exceptions during printgraph,...

This commit is contained in:
Jindra Pet��k
2013-05-03 20:40:07 +02:00
parent fb69ba2a8a
commit 3b82cf2fac
14 changed files with 148 additions and 204 deletions
@@ -72,8 +72,8 @@ public class ABC {
public int removeTraps() {
int rem = 0;
for (MethodBody body : bodies) {
rem += body.removeTraps(constants, this);
for (int s = 0; s < script_info.length; s++) {
rem += script_info[s].removeTraps(s, this);
}
return rem;
}
@@ -465,6 +465,16 @@ public class ABC {
return ret.toString();
}
public boolean isStaticTraitId(int classIndex, int traitId) {
if (traitId < class_info[classIndex].static_traits.traits.length) {
return true;
} else if (traitId < class_info[classIndex].static_traits.traits.length + instance_info[classIndex].instance_traits.traits.length) {
return false;
} else {
return true; //Can be class or instance initializer
}
}
public Trait findTraitByTraitId(int classIndex, int traitId) {
if (traitId < class_info[classIndex].static_traits.traits.length) {
return class_info[classIndex].static_traits.traits[traitId];