Swapped ArrayIndexOutOfBoundsException for plain array length check in AbstractFunctionPtg.getParameterClass(). (To help debugging when trying to find a real AIOOB)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@653125 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
bbe3ee9b4d
commit
3774c3228f
@ -147,10 +147,12 @@ public abstract class AbstractFunctionPtg extends OperationPtg {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public byte getParameterClass(int index) {
|
public byte getParameterClass(int index) {
|
||||||
try {
|
if (index >= paramClass.length) {
|
||||||
return paramClass[index];
|
// For var-arg (and other?) functions, the metadata does not list all the parameter
|
||||||
} catch (ArrayIndexOutOfBoundsException aioobe) {
|
// operand classes. In these cases, all extra parameters are assumed to have the
|
||||||
|
// same operand class as the last one specified.
|
||||||
return paramClass[paramClass.length - 1];
|
return paramClass[paramClass.length - 1];
|
||||||
}
|
}
|
||||||
|
return paramClass[index];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user