summaryrefslogtreecommitdiffstats
path: root/src/util/expression-evaluator.cpp
diff options
context:
space:
mode:
authorrafael-g <rafael@sizeofvoid.org>2016-06-05 06:43:06 +0000
committerJazzyNico <nicoduf@yahoo.fr>2016-06-05 06:43:06 +0000
commit8e79c58572bac72489bde00c15d092bce02e850a (patch)
tree6fc06036846b7a6c5cac3d1c67407f0a14a1c306 /src/util/expression-evaluator.cpp
parent[Bug #1550178] Inkscape crashed with segfault in ExpressionEvaluator on OpenBSD. (diff)
downloadinkscape-8e79c58572bac72489bde00c15d092bce02e850a.tar.gz
inkscape-8e79c58572bac72489bde00c15d092bce02e850a.zip
[Bug #1587311] Entering + into stroke width dialog crashes Inkscape.
Fixed bugs: - https://launchpad.net/bugs/1587311 (bzr r14952)
Diffstat (limited to 'src/util/expression-evaluator.cpp')
-rw-r--r--src/util/expression-evaluator.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/util/expression-evaluator.cpp b/src/util/expression-evaluator.cpp
index b0b8e6036..dd7ce97f7 100644
--- a/src/util/expression-evaluator.cpp
+++ b/src/util/expression-evaluator.cpp
@@ -208,8 +208,11 @@ EvaluatorQuantity ExpressionEvaluator::evaluateFactor()
{
EvaluatorQuantity evaluated_factor = EvaluatorQuantity();
EvaluatorToken consumed_token = EvaluatorToken();
-
- if (acceptToken(TOKEN_NUM, &consumed_token)) {
+
+ if (acceptToken(TOKEN_END, &consumed_token)) {
+ return evaluated_factor;
+ }
+ else if (acceptToken(TOKEN_NUM, &consumed_token)) {
evaluated_factor.value = consumed_token.value.fl;
} else if (acceptToken('(', NULL)) {
evaluated_factor = evaluateExpression();