diff options
author | Oswald Buddenhagen <oswald.buddenhagen@digia.com> | 2013-09-05 18:30:05 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-07 21:01:31 +0200 |
commit | 50a90720be7d67dcdfe704a82fb3b1138edd2aab (patch) | |
tree | cb1751c23c59e4753f13709bf24fa313e4949f5a /qmake/library/qmakeglobals.cpp | |
parent | 51c04e292efbcd1baa66f9f6663ba4d7b64da16d (diff) |
make setting a bad $$[QMAKEFEATURES] not crash qmake
Task-number: QTBUG-29642
Change-Id: I9cc209eb313f03bf342bcb64b1de3005755700a7
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'qmake/library/qmakeglobals.cpp')
-rw-r--r-- | qmake/library/qmakeglobals.cpp | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/qmake/library/qmakeglobals.cpp b/qmake/library/qmakeglobals.cpp index bf37d51c40..1c3148b0b2 100644 --- a/qmake/library/qmakeglobals.cpp +++ b/qmake/library/qmakeglobals.cpp @@ -270,6 +270,19 @@ QString QMakeGlobals::shadowedPath(const QString &fileName) const return QString(); } +QStringList QMakeGlobals::splitPathList(const QString &val) const +{ + QStringList ret; + if (!val.isEmpty()) { + QDir bdir; + QStringList vals = val.split(dirlist_sep); + ret.reserve(vals.length()); + foreach (const QString &it, vals) + ret << QDir::cleanPath(bdir.absoluteFilePath(it)); + } + return ret; +} + QString QMakeGlobals::getEnv(const QString &var) const { #ifdef PROEVALUATOR_SETENV @@ -281,16 +294,7 @@ QString QMakeGlobals::getEnv(const QString &var) const QStringList QMakeGlobals::getPathListEnv(const QString &var) const { - QStringList ret; - QString val = getEnv(var); - if (!val.isEmpty()) { - QDir bdir; - QStringList vals = val.split(dirlist_sep); - ret.reserve(vals.length()); - foreach (const QString &it, vals) - ret << QDir::cleanPath(bdir.absoluteFilePath(it)); - } - return ret; + return splitPathList(getEnv(var)); } QString QMakeGlobals::expandEnvVars(const QString &str) const |