aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
diff options
context:
space:
mode:
authorOswald Buddenhagen <[email protected]>2010-10-19 11:14:03 +0200
committerOswald Buddenhagen <[email protected]>2010-11-17 13:19:07 +0100
commit1e362b0f8b0dfd712337df35cd26c5dc98dfc294 (patch)
treedbb61c65fc1c3e84b507e03c2b3f62a36acd6488 /src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
parent531c70f05bfc8355f856f2af41be533fb13b85e6 (diff)
overhaul process argument handling
get away from argument stringlists. instead, use native shell command lines which support quoting/splitting, environment variable expansion and redirections with well-understood semantics. Task-number: QTCREATORBUG-542 Task-number: QTCREATORBUG-1564
Diffstat (limited to 'src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp')
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
index 4c28260adc7..5a51a0cea3c 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
@@ -43,6 +43,7 @@
#include <utils/debuggerlanguagechooser.h>
#include <utils/detailswidget.h>
#include <utils/qtcassert.h>
+#include <utils/qtcprocess.h>
#include <qt4projectmanager/qtversionmanager.h>
#include <qt4projectmanager/qt4projectmanagerconstants.h>
#include <qt4projectmanager/qmlobservertool.h>
@@ -135,23 +136,20 @@ QString QmlProjectRunConfiguration::observerPath() const
}
}
-QStringList QmlProjectRunConfiguration::viewerArguments() const
+QString QmlProjectRunConfiguration::viewerArguments() const
{
- QStringList args;
-
// arguments in .user file
- if (!m_qmlViewerArgs.isEmpty())
- args.append(m_qmlViewerArgs.split(QLatin1Char(' ')));
+ QString args = m_qmlViewerArgs;
// arguments from .qmlproject file
foreach (const QString &importPath, qmlTarget()->qmlProject()->importPaths()) {
- args.append(QLatin1String("-I"));
- args.append(importPath);
+ Utils::QtcProcess::addArg(&args, "-I");
+ Utils::QtcProcess::addArg(&args, importPath);
}
- const QString s = mainScript();
- if (! s.isEmpty())
- args.append(s);
+ const QString &s = mainScript();
+ if (!s.isEmpty())
+ Utils::QtcProcess::addArg(&args, s);
return args;
}