diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeploystep.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemodeploystep.cpp index 889076d828ae930471449b889199e771d2d7fcdd..c1d94b21309a9244534d402f2e5735ff5ab92b76 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemodeploystep.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeploystep.cpp @@ -88,6 +88,7 @@ void MaemoDeployStep::run(QFutureInterface<bool> &fi) QTimer::singleShot(0, this, SLOT(start())); MaemoDeployEventHandler eventHandler(this, fi); + connect (&eventHandler, SIGNAL(destroyed()), this, SLOT(stop())); } BuildStepConfigWidget *MaemoDeployStep::createConfigWidget() @@ -176,8 +177,8 @@ void MaemoDeployStep::stop() } else if (!m_uploadsInProgress.isEmpty() || !m_linksInProgress.isEmpty()) { m_uploadsInProgress.clear(); m_linksInProgress.clear(); - m_uploader->closeChannel(); disconnect(m_uploader.data(), 0, this, 0); + m_uploader->closeChannel(); } if (m_connection) disconnect(m_connection.data(), 0, this, 0); diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeploystep.h b/src/plugins/qt4projectmanager/qt-maemo/maemodeploystep.h index 95331c1cd96dadbb34548000a49575908c21c49e..9d2fb076df2bb66216c4df67daf88a4ecfcebf05 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemodeploystep.h +++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeploystep.h @@ -74,6 +74,7 @@ signals: private slots: void start(); + void stop(); void handleConnected(); void handleConnectionFailure(); void handleSftpChannelInitialized(); @@ -95,7 +96,6 @@ private: virtual bool fromMap(const QVariantMap &map); void ctor(); - void stop(); void raiseError(const QString &error); void writeOutput(const QString &text, const QTextCharFormat &format = QTextCharFormat());