summaryrefslogtreecommitdiff
path: root/src/libs
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs')
-rw-r--r--src/libs/utils/ssh/sshconnection.cpp2
-rw-r--r--src/libs/utils/ssh/sshremoteprocessrunner.cpp3
2 files changed, 4 insertions, 1 deletions
diff --git a/src/libs/utils/ssh/sshconnection.cpp b/src/libs/utils/ssh/sshconnection.cpp
index 6a712817ed..0efdd0091e 100644
--- a/src/libs/utils/ssh/sshconnection.cpp
+++ b/src/libs/utils/ssh/sshconnection.cpp
@@ -620,6 +620,8 @@ void SshConnectionPrivate::sendKeepAlivePacket()
void SshConnectionPrivate::connectToHost()
{
+ QTC_ASSERT(m_state == SocketUnconnected, return);
+
m_incomingData.clear();
m_incomingPacket.reset();
m_sendFacility.reset();
diff --git a/src/libs/utils/ssh/sshremoteprocessrunner.cpp b/src/libs/utils/ssh/sshremoteprocessrunner.cpp
index 0d5fa24e93..6a751cc37e 100644
--- a/src/libs/utils/ssh/sshremoteprocessrunner.cpp
+++ b/src/libs/utils/ssh/sshremoteprocessrunner.cpp
@@ -145,7 +145,8 @@ void SshRemoteProcessRunnerPrivate::run(const QByteArray &command)
} else {
connect(m_connection.data(), SIGNAL(connected()),
SLOT(handleConnected()));
- m_connection->connectToHost();
+ if (m_connection->state() == SshConnection::Unconnected)
+ m_connection->connectToHost();
}
}