From 7ef04fc737445729dab28f8c36420d7da96ab7df Mon Sep 17 00:00:00 2001 From: Arno Unkrig Date: Fri, 21 Feb 2020 16:19:52 +0100 Subject: [PATCH] --- janino/src/main/java/org/codehaus/janino/StackMap.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/janino/src/main/java/org/codehaus/janino/StackMap.java b/janino/src/main/java/org/codehaus/janino/StackMap.java index 067cddb0a..cc82f88de 100644 --- a/janino/src/main/java/org/codehaus/janino/StackMap.java +++ b/janino/src/main/java/org/codehaus/janino/StackMap.java @@ -27,6 +27,7 @@ import java.util.Arrays; +import org.codehaus.commons.compiler.InternalCompilerException; import org.codehaus.commons.nullanalysis.Nullable; import org.codehaus.janino.util.ClassFile.StackMapTableAttribute.VerificationTypeInfo; @@ -89,7 +90,10 @@ class StackMap { * @return The top element of the operand stack */ VerificationTypeInfo - peekOperand() { return this.operands[this.operands.length - 1]; } + peekOperand() { + if (this.operands.length == 0) throw new InternalCompilerException("Operand stack underflow"); + return this.operands[this.operands.length - 1]; + } VerificationTypeInfo[] operands() { return (VerificationTypeInfo[]) this.operands.clone(); }