summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swiften/FileTransfer')
-rw-r--r--Swiften/FileTransfer/DefaultFileTransferTransporter.cpp5
-rw-r--r--Swiften/FileTransfer/SOCKS5BytestreamClientSession.cpp2
-rw-r--r--Swiften/FileTransfer/SOCKS5BytestreamProxiesManager.cpp1
3 files changed, 8 insertions, 0 deletions
diff --git a/Swiften/FileTransfer/DefaultFileTransferTransporter.cpp b/Swiften/FileTransfer/DefaultFileTransferTransporter.cpp
index dffc39b..ca29898 100644
--- a/Swiften/FileTransfer/DefaultFileTransferTransporter.cpp
+++ b/Swiften/FileTransfer/DefaultFileTransferTransporter.cpp
@@ -71,11 +71,16 @@ DefaultFileTransferTransporter::DefaultFileTransferTransporter(
71 boost::bind(&DefaultFileTransferTransporter::handleRemoteCandidateSelectFinished, this, _1, _2)); 71 boost::bind(&DefaultFileTransferTransporter::handleRemoteCandidateSelectFinished, this, _1, _2));
72} 72}
73 73
74DefaultFileTransferTransporter::~DefaultFileTransferTransporter() { 74DefaultFileTransferTransporter::~DefaultFileTransferTransporter() {
75 stopGeneratingLocalCandidates(); 75 stopGeneratingLocalCandidates();
76 remoteCandidateSelector->onCandidateSelectFinished.disconnect(
77 boost::bind(&DefaultFileTransferTransporter::handleRemoteCandidateSelectFinished, this, _1, _2));
76 delete remoteCandidateSelector; 78 delete remoteCandidateSelector;
79
80 localCandidateGenerator->onLocalTransportCandidatesGenerated.disconnect(
81 boost::bind(&DefaultFileTransferTransporter::handleLocalCandidatesGenerated, this, _1));
77 delete localCandidateGenerator; 82 delete localCandidateGenerator;
78} 83}
79 84
80void DefaultFileTransferTransporter::initialize() { 85void DefaultFileTransferTransporter::initialize() {
81 s5bSessionID = s5bRegistry->generateSessionID(); 86 s5bSessionID = s5bRegistry->generateSessionID();
diff --git a/Swiften/FileTransfer/SOCKS5BytestreamClientSession.cpp b/Swiften/FileTransfer/SOCKS5BytestreamClientSession.cpp
index 04d5d86..a38501b 100644
--- a/Swiften/FileTransfer/SOCKS5BytestreamClientSession.cpp
+++ b/Swiften/FileTransfer/SOCKS5BytestreamClientSession.cpp
@@ -40,10 +40,12 @@ SOCKS5BytestreamClientSession::SOCKS5BytestreamClientSession(
40 weFailedTimeout->onTick.connect( 40 weFailedTimeout->onTick.connect(
41 boost::bind(&SOCKS5BytestreamClientSession::handleWeFailedTimeout, this)); 41 boost::bind(&SOCKS5BytestreamClientSession::handleWeFailedTimeout, this));
42} 42}
43 43
44SOCKS5BytestreamClientSession::~SOCKS5BytestreamClientSession() { 44SOCKS5BytestreamClientSession::~SOCKS5BytestreamClientSession() {
45 weFailedTimeout->onTick.disconnect(
46 boost::bind(&SOCKS5BytestreamClientSession::handleWeFailedTimeout, this));
45 weFailedTimeout->stop(); 47 weFailedTimeout->stop();
46} 48}
47 49
48void SOCKS5BytestreamClientSession::start() { 50void SOCKS5BytestreamClientSession::start() {
49 assert(state == Initial); 51 assert(state == Initial);
diff --git a/Swiften/FileTransfer/SOCKS5BytestreamProxiesManager.cpp b/Swiften/FileTransfer/SOCKS5BytestreamProxiesManager.cpp
index 25a12ea..3221790 100644
--- a/Swiften/FileTransfer/SOCKS5BytestreamProxiesManager.cpp
+++ b/Swiften/FileTransfer/SOCKS5BytestreamProxiesManager.cpp
@@ -111,10 +111,11 @@ boost::shared_ptr<SOCKS5BytestreamClientSession> SOCKS5BytestreamProxiesManager:
111 SOCKS5BytestreamClientSession::ref connection = boost::make_shared<SOCKS5BytestreamClientSession>(connectionFactory_->createConnection(), addressPort, destAddr, timerFactory_); 111 SOCKS5BytestreamClientSession::ref connection = boost::make_shared<SOCKS5BytestreamClientSession>(connectionFactory_->createConnection(), addressPort, destAddr, timerFactory_);
112 return connection; 112 return connection;
113} 113}
114 114
115void SOCKS5BytestreamProxiesManager::handleProxiesFound(std::vector<S5BProxyRequest::ref> proxyHosts) { 115void SOCKS5BytestreamProxiesManager::handleProxiesFound(std::vector<S5BProxyRequest::ref> proxyHosts) {
116 proxyFinder_->onProxiesFound.disconnect(boost::bind(&SOCKS5BytestreamProxiesManager::handleProxiesFound, this, _1));
116 foreach(S5BProxyRequest::ref proxy, proxyHosts) { 117 foreach(S5BProxyRequest::ref proxy, proxyHosts) {
117 if (proxy) { 118 if (proxy) {
118 if (HostAddress(proxy->getStreamHost().get().host).isValid()) { 119 if (HostAddress(proxy->getStreamHost().get().host).isValid()) {
119 addS5BProxy(proxy); 120 addS5BProxy(proxy);
120 onDiscoveredProxiesChanged(); 121 onDiscoveredProxiesChanged();