aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/remotelinux/remotelinuxdebugsupport.cpp
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@theqtcompany.com>2015-08-10 17:43:58 +0200
committerUlf Hermann <ulf.hermann@theqtcompany.com>2015-08-17 15:13:56 +0000
commit5f90990c308e2deddc3f9491262e354477ebe5f4 (patch)
tree65f7524332bc61168836ebf16fd5d84dc4deb083 /src/plugins/remotelinux/remotelinuxdebugsupport.cpp
parentbe31022276ced789d3a0ea2fb373a63a5921e157 (diff)
Tell the QML debug server exactly what services we expect
The services need to be loaded before the first QML engine is created. The first QML engine may be created before a client connects. When the JavaScript debug service is loaded the engine is put into interpreter mode as we don't support debugging in JIT mode. Profiling, however should be done in JIT mode, whenever possible. Thus, in order to avoid the loading of unnecessary plugins and to get better results from the QML profiler we tell the debug server which services we expect, even before the client connects. Qt 5.6 will support additional command line arguments to specify the services and this change uses them. Change-Id: I6dcee016c39995e9adada6eaf0e39d8299c9b7e7 Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com> Reviewed-by: hjk <hjk@theqtcompany.com>
Diffstat (limited to 'src/plugins/remotelinux/remotelinuxdebugsupport.cpp')
-rw-r--r--src/plugins/remotelinux/remotelinuxdebugsupport.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/plugins/remotelinux/remotelinuxdebugsupport.cpp b/src/plugins/remotelinux/remotelinuxdebugsupport.cpp
index 769b0a2929..33e0001ffa 100644
--- a/src/plugins/remotelinux/remotelinuxdebugsupport.cpp
+++ b/src/plugins/remotelinux/remotelinuxdebugsupport.cpp
@@ -45,6 +45,7 @@
#include <utils/qtcassert.h>
#include <utils/qtcprocess.h>
+#include <qmldebug/qmldebugcommandlinearguments.h>
#include <QPointer>
@@ -101,7 +102,8 @@ DebuggerStartParameters LinuxDeviceDebugSupport::startParameters(const AbstractR
aspect->setUseMultiProcess(true);
QStringList args = runConfig->arguments();
if (aspect->useQmlDebugger())
- args.prepend(QString::fromLatin1("-qmljsdebugger=port:%qml_port%,block"));
+ args.prepend(QmlDebug::qmlDebugCommandLineArguments(QmlDebug::QmlDebuggerServices));
+
params.processArgs = Utils::QtcProcess::joinArgs(args, Utils::OsTypeLinux);
params.executable = runConfig->localExecutableFilePath();
params.remoteChannel = device->sshParameters().host + QLatin1String(":-1");
@@ -164,7 +166,8 @@ void LinuxDeviceDebugSupport::startExecution()
QString command;
if (d->qmlDebugging)
- args.prepend(QString::fromLatin1("-qmljsdebugger=port:%1,block").arg(d->qmlPort));
+ args.prepend(QmlDebug::qmlDebugCommandLineArguments(QmlDebug::QmlDebuggerServices,
+ d->qmlPort));
if (d->qmlDebugging && !d->cppDebugging) {
command = remoteFilePath();