diff options
author | PJ Fanning <fanningpj@apache.org> | 2022-08-01 16:06:59 +0000 |
---|---|---|
committer | PJ Fanning <fanningpj@apache.org> | 2022-08-01 16:06:59 +0000 |
commit | 633baa45eb3cb314a7128ad4f010071fe1e4eb84 (patch) | |
tree | 40851c300ff210e5043630ddb11ccc36aaf1d62b /poi | |
parent | f3a1d6ac92be74c9d79809a9bf478a9c6c3c08cb (diff) | |
download | poi-633baa45eb3cb314a7128ad4f010071fe1e4eb84.tar.gz poi-633baa45eb3cb314a7128ad4f010071fe1e4eb84.zip |
[bug-66181] fix issue with evaluation of blank string in VALUE function
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1903171 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'poi')
-rw-r--r-- | poi/src/main/java/org/apache/poi/ss/formula/functions/Value.java | 4 | ||||
-rw-r--r-- | poi/src/test/java/org/apache/poi/ss/formula/functions/TestValue.java | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/poi/src/main/java/org/apache/poi/ss/formula/functions/Value.java b/poi/src/main/java/org/apache/poi/ss/formula/functions/Value.java index d2a1f24fc7..b3c6cb3c45 100644 --- a/poi/src/main/java/org/apache/poi/ss/formula/functions/Value.java +++ b/poi/src/main/java/org/apache/poi/ss/formula/functions/Value.java @@ -23,6 +23,7 @@ import org.apache.poi.ss.formula.eval.NumberEval; import org.apache.poi.ss.formula.eval.OperandResolver; import org.apache.poi.ss.formula.eval.ValueEval; import org.apache.poi.ss.usermodel.DateUtil; +import org.apache.poi.util.StringUtil; import java.time.DateTimeException; @@ -52,6 +53,9 @@ public final class Value extends Fixed1ArgFunction implements ArrayFunction { return e.getErrorEval(); } String strText = OperandResolver.coerceValueToString(veText); + if (StringUtil.isBlank(strText)) { + return ErrorEval.VALUE_INVALID; + } Double result = convertTextToNumber(strText); if (result == null) result = parseDateTime(strText); if (result == null) { diff --git a/poi/src/test/java/org/apache/poi/ss/formula/functions/TestValue.java b/poi/src/test/java/org/apache/poi/ss/formula/functions/TestValue.java index 83bf4b6c13..03f8aab85a 100644 --- a/poi/src/test/java/org/apache/poi/ss/formula/functions/TestValue.java +++ b/poi/src/test/java/org/apache/poi/ss/formula/functions/TestValue.java @@ -93,5 +93,6 @@ final class TestValue { confirmValueError(",300"); confirmValueError("0.233,4"); confirmValueError("1e2.5"); + confirmValueError(""); } } |