NPE fix (possible dead bytecode instructions)

This commit is contained in:
Ilya Klyuchnikov
2014-07-10 10:35:45 +02:00
committed by peter
parent 8de3dfd0ae
commit b993ee5f35
@@ -44,19 +44,22 @@ final class cfg {
TIntHashSet result = new TIntHashSet();
for (int i = 0; i < frames.length; i++) {
AbstractInsnNode insnNode = insns.get(i);
switch (insnNode.getOpcode()) {
case ARETURN:
case IRETURN:
case LRETURN:
case FRETURN:
case DRETURN:
for (AbstractInsnNode sourceInsn : frames[i].pop().insns) {
result.add(insns.indexOf(sourceInsn));
}
break;
Frame<SourceValue> frame = frames[i];
if (frame != null) {
switch (insnNode.getOpcode()) {
case ARETURN:
case IRETURN:
case LRETURN:
case FRETURN:
case DRETURN:
for (AbstractInsnNode sourceInsn : frame.pop().insns) {
result.add(insns.indexOf(sourceInsn));
}
break;
default:
break;
default:
break;
}
}
}
return result;