diff --git a/src/plugins/remotelinux/remotelinuxapplicationrunner.cpp b/src/plugins/remotelinux/remotelinuxapplicationrunner.cpp index bb8e4350dc73fac0919a691efd6e70e24534c450..ab72f824d0b041d46492a8078a859419d3192e3d 100644 --- a/src/plugins/remotelinux/remotelinuxapplicationrunner.cpp +++ b/src/plugins/remotelinux/remotelinuxapplicationrunner.cpp @@ -333,8 +333,14 @@ void AbstractRemoteLinuxApplicationRunner::emitError(const QString &errorMsg, bo void AbstractRemoteLinuxApplicationRunner::handlePortsGathererError(const QString &errorMsg) { - if (m_d->state != Inactive) - emitError(errorMsg); + if (m_d->state != Inactive) { + if (connection()->errorState() != SshNoError) { + emitError(errorMsg); + } else { + emit reportProgress(tr("Gathering ports failed: %1\nContinuing anyway.").arg(errorMsg)); + handleUsedPortsAvailable(); + } + } } void AbstractRemoteLinuxApplicationRunner::handleUsedPortsAvailable() diff --git a/src/plugins/remotelinux/remotelinuxusedportsgatherer.cpp b/src/plugins/remotelinux/remotelinuxusedportsgatherer.cpp index c824a1542bdcc73c35dc152728c5734ed931db92..bd790d06b3f4601ba3efc6d4a753826f6c18a1db 100644 --- a/src/plugins/remotelinux/remotelinuxusedportsgatherer.cpp +++ b/src/plugins/remotelinux/remotelinuxusedportsgatherer.cpp @@ -161,8 +161,8 @@ void RemoteLinuxUsedPortsGatherer::handleProcessClosed(int exitStatus) if (m_d->procRunner->process()->exitCode() == 0) { setupUsedPorts(); } else { - errMsg = tr("Remote process failed: %1") - .arg(m_d->procRunner->process()->errorString()); + errMsg = tr("Remote process failed; exit code was %1.") + .arg(m_d->procRunner->process()->exitCode()); } break; default: