From 9faa4b5a59df47c8448f5db7ee8fa2f81b2aeaf7 Mon Sep 17 00:00:00 2001 From: ck <qt-info@nokia.com> Date: Fri, 16 Apr 2010 12:52:00 +0200 Subject: [PATCH] Maemo: Only run dpkg if the package has been newly deployed. Reviewed-by: kh1 --- .../qt4projectmanager/qt-maemo/maemoruncontrol.cpp | 11 ++++++++--- .../qt4projectmanager/qt-maemo/maemoruncontrol.h | 1 + 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp index 5a80bdee0e4..a7e2856225d 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp @@ -127,6 +127,9 @@ void AbstractMaemoRunControl::startDeployment(bool forDebugging) m_deployables.append(Deployable(packageFileName(), QFileInfo(executableOnHost()).canonicalPath(), &MaemoRunConfiguration::wasDeployed)); + m_needsInstall = true; + } else { + m_needsInstall = false; } if (forDebugging && m_runConfig->debuggingHelpersNeedDeployment(m_devConfig.host)) { @@ -317,9 +320,11 @@ QString AbstractMaemoRunControl::remoteInstallCommand() const const QString AbstractMaemoRunControl::targetCmdLinePrefix() const { - return QString::fromLocal8Bit("%1 && %2 chmod u+x %3 && source /etc/profile && ") - .arg(remoteInstallCommand()).arg(remoteSudo()) - .arg(executableFilePathOnTarget()); + const QString &installPrefix = m_needsInstall + ? remoteInstallCommand() + QLatin1String(" && ") + : QString(); + return QString::fromLocal8Bit("%1%2 chmod u+x %3 && source /etc/profile && ") + .arg(installPrefix).arg(remoteSudo()).arg(executableFilePathOnTarget()); } QString AbstractMaemoRunControl::targetCmdLineSuffix() const diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h index 050a191f306..c455f4da32c 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h +++ b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h @@ -125,6 +125,7 @@ private: updateFunc updateTimestamp; }; QList<Deployable> m_deployables; + bool m_needsInstall; }; class MaemoRunControl : public AbstractMaemoRunControl -- GitLab