summaryrefslogtreecommitdiff
path: root/src/shared/proparser/qmakeevaluator.cpp
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@nokia.com>2012-07-31 15:12:36 +0200
committerOswald Buddenhagen <oswald.buddenhagen@nokia.com>2012-08-01 16:45:57 +0200
commit76db45fafe8e87668c9446d6ebd3827776389b97 (patch)
tree9cc33c323ff583240ea2456b9f1dc4eec0718be9 /src/shared/proparser/qmakeevaluator.cpp
parent986c953ac6c099b261141314ea6657c5dffb459d (diff)
downloadqt-creator-76db45fafe8e87668c9446d6ebd3827776389b97.tar.gz
make error() actually cancel execution in non-cumulative mode
Change-Id: I50289cdfe906c923076a4a2dc57f7ca35c8e9b90 Reviewed-by: Daniel Teske <daniel.teske@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Diffstat (limited to 'src/shared/proparser/qmakeevaluator.cpp')
-rw-r--r--src/shared/proparser/qmakeevaluator.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/shared/proparser/qmakeevaluator.cpp b/src/shared/proparser/qmakeevaluator.cpp
index 45222fb955..330f7a449a 100644
--- a/src/shared/proparser/qmakeevaluator.cpp
+++ b/src/shared/proparser/qmakeevaluator.cpp
@@ -1478,7 +1478,8 @@ ProStringList QMakeEvaluator::evaluateFunction(
m_valuemapStack.top()[ProString(QString::number(i+1))] = argumentsList[i];
}
m_valuemapStack.top()[statics.strARGS] = args;
- oki = (visitProBlock(func.pro(), func.tokPtr()) != ReturnFalse); // True || Return
+ VisitReturn vr = visitProBlock(func.pro(), func.tokPtr());
+ oki = (vr != ReturnFalse && vr != ReturnError); // True || Return
ret = m_returnValue;
m_returnValue.clear();