If we see a call to an unknown method, conservatively add edges to all catch handlers

This is an attempt to fix issue #123
This commit is contained in:
Martin Mohr 2016-12-09 16:24:13 +01:00
parent dff20ac49c
commit 4228bac5ff
2 changed files with 8 additions and 0 deletions

View File

@ -291,6 +291,10 @@ public class ShrikeCFG extends AbstractCFG<IInstruction, ShrikeCFG.BasicBlock> i
e.printStackTrace();
Assertions.UNREACHABLE();
}
IMethod mTarget = cha.resolveMethod(target);
if (mTarget == null) {
goToAllHandlers = true;
}
}
}
}

View File

@ -297,6 +297,10 @@ public class DexCFG extends AbstractCFG<Instruction, DexCFG.BasicBlock> implemen
e.printStackTrace();
Assertions.UNREACHABLE();
}
IMethod mTarget = cha.resolveMethod(target);
if (mTarget == null) {
goToAllHandlers = true;
}
}
}
}