diff --git a/java/java-psi-impl/src/com/intellij/psi/controlFlow/ControlFlowUtil.java b/java/java-psi-impl/src/com/intellij/psi/controlFlow/ControlFlowUtil.java index de913b43d526..fa48fe108c43 100644 --- a/java/java-psi-impl/src/com/intellij/psi/controlFlow/ControlFlowUtil.java +++ b/java/java-psi-impl/src/com/intellij/psi/controlFlow/ControlFlowUtil.java @@ -1463,7 +1463,8 @@ public class ControlFlowUtil { // clear procedure text and return instructions aftewards int i; for (i = instruction.procBegin; - i < instruction.procEnd || i < instructions.size() && instructions.get(i) instanceof ReturnInstruction; i++) { + i < clientVisitor.processedInstructions.length && + (i < instruction.procEnd || i < instructions.size() && instructions.get(i) instanceof ReturnInstruction); i++) { clientVisitor.processedInstructions[i] = false; } clientVisitor.procedureEntered(instruction.procBegin, i);