diff options
author | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2016-11-25 20:41:20 +0100 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2016-12-13 18:55:19 +0000 |
commit | 80e63223f80643a93255cde9e0a4e82c705b2262 (patch) | |
tree | 28b05c8a647f4db2debf4161c1db294cb9ed2383 /qmake/library/qmakeevaluator.cpp | |
parent | c0842aceaf9881caba798f2569e6e1cf03ce7f70 (diff) |
make qmake abort when $$prompt() gets EOF
otherwise, infinite loops can result, as amply demonstrated by the new
configure (which duly replicated the old configures' behavior ...).
QMakeEvaluator::evaluateBuiltinExpand() now returns a VisitReturn like
all other evaluate*() functions. the string list return value is now an
out parameter; i used a reference instead of a pointer to avoid
adjusting 56 usages of it.
Task-number: QTBUG-13964
Change-Id: I51ca7df8d694c6ffe9d9899cba414b1b46f5ce95
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'qmake/library/qmakeevaluator.cpp')
-rw-r--r-- | qmake/library/qmakeevaluator.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/qmake/library/qmakeevaluator.cpp b/qmake/library/qmakeevaluator.cpp index 017fc3434c..cc57aa7f2b 100644 --- a/qmake/library/qmakeevaluator.cpp +++ b/qmake/library/qmakeevaluator.cpp @@ -1774,8 +1774,7 @@ QMakeEvaluator::VisitReturn QMakeEvaluator::evaluateExpandFunction( ProStringList args; if (expandVariableReferences(tokPtr, 5, &args, true) == ReturnError) return ReturnError; - *ret = evaluateBuiltinExpand(func_t, func, args); - return ReturnTrue; + return evaluateBuiltinExpand(func_t, func, args, *ret); } QHash<ProKey, ProFunctionDef>::ConstIterator it = |