summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@digia.com>2014-02-05 21:26:37 +0100
committerOswald Buddenhagen <oswald.buddenhagen@digia.com>2014-02-07 10:08:13 +0100
commitcdc2a0f72334268684e0407e9b04b3188e00d4bf (patch)
tree2aaba6e12d37688eebbd7783860cacd30bbaaf24
parent701a82d3a2185702c09dfecb361853fc18947807 (diff)
downloadqt-creator-cdc2a0f72334268684e0407e9b04b3188e00d4bf.tar.gz
fix raw data leak in $$sprintf()
it could be only triggered by abusing the function (no expansion actually done), and nobody is using this to start with, but still ... Change-Id: I3d4a23ae4d1eea07955572d8213094e0dc218f6d Reviewed-by: Daniel Teske <daniel.teske@digia.com>
-rw-r--r--src/shared/proparser/qmakebuiltins.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/shared/proparser/qmakebuiltins.cpp b/src/shared/proparser/qmakebuiltins.cpp
index 12cc2ffd9c..d51b476d8d 100644
--- a/src/shared/proparser/qmakebuiltins.cpp
+++ b/src/shared/proparser/qmakebuiltins.cpp
@@ -508,7 +508,7 @@ ProStringList QMakeEvaluator::evaluateBuiltinExpand(
QString tmp = args.at(0).toQString(m_tmp1);
for (int i = 1; i < args.count(); ++i)
tmp = tmp.arg(args.at(i).toQString(m_tmp2));
- ret << ProString(tmp);
+ ret << (tmp.isSharedWith(m_tmp1) ? args.at(0) : ProString(tmp).setSource(args.at(0)));
}
break;
case E_FORMAT_NUMBER: