From bbe3bab2e8458ba20bf12c22120af84d80426fa6 Mon Sep 17 00:00:00 2001 From: Robert Loehning <robert.loehning@nokia.com> Date: Fri, 2 Oct 2009 18:27:30 +0200 Subject: [PATCH] Trk: Fixed installing without running. --- src/shared/trk/launcher.cpp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/shared/trk/launcher.cpp b/src/shared/trk/launcher.cpp index 70c8ba95652..cfad2379d97 100644 --- a/src/shared/trk/launcher.cpp +++ b/src/shared/trk/launcher.cpp @@ -127,8 +127,6 @@ bool Launcher::startServer(QString *errorMessage) d->m_device.sendTrkMessage(TrkSupported, TrkCallback(this, &Launcher::handleSupportMask)); d->m_device.sendTrkMessage(TrkCpuType, TrkCallback(this, &Launcher::handleCpuType)); d->m_device.sendTrkMessage(TrkVersions, TrkCallback(this, &Launcher::handleTrkVersion)); - if (d->m_fileName.isEmpty()) - return true; if (d->m_copyState.sourceFileName.isEmpty() || d->m_copyState.destinationFileName.isEmpty()) installAndRun(); else @@ -144,12 +142,12 @@ void Launcher::setVerbose(int v) void Launcher::installAndRun() { - if (!d->m_installFileName.isEmpty()) { - installRemotePackageSilently(d->m_installFileName); - } else { + if (d->m_installFileName.isEmpty()) startInferiorIfNeeded(); - } + else + installRemotePackageSilently(d->m_installFileName); } + void Launcher::logMessage(const QString &msg) { if (d->m_verbose) @@ -295,7 +293,6 @@ void Launcher::handleTrkVersion(const TrkResult &result) << " float size: " << d->m_session.fpTypeSize << " Trk: v" << trkMajor << '.' << trkMinor << " Protocol: " << protocolMajor << '.' << protocolMinor; qWarning("%s", qPrintable(msg)); - d->m_device.sendTrkMessage(TrkPing, TrkCallback(this, &Launcher::waitForTrkFinished)); } } @@ -497,15 +494,18 @@ void Launcher::installRemotePackageSilently(const QString &fileName) void Launcher::handleInstallPackageFinished(const TrkResult &) { - if (d->m_fileName.isEmpty()) { + if (d->m_fileName.isEmpty()) emit finished(); - } else { + else startInferiorIfNeeded(); - } } void Launcher::startInferiorIfNeeded() { + if (d->m_fileName.isEmpty()) { + d->m_device.sendTrkMessage(TrkPing, TrkCallback(this, &Launcher::waitForTrkFinished)); + return; + } emit startingApplication(); if (d->m_session.pid != 0) { logMessage("Process already 'started'"); -- GitLab