Index: webrtc/p2p/base/tcpport.cc |
diff --git a/webrtc/p2p/base/tcpport.cc b/webrtc/p2p/base/tcpport.cc |
index 79843d82de729eba851360513815e0334a5b7c99..92143020e3a7c68c46fb88614b12358f161e022d 100644 |
--- a/webrtc/p2p/base/tcpport.cc |
+++ b/webrtc/p2p/base/tcpport.cc |
@@ -96,23 +96,9 @@ TCPPort::TCPPort(rtc::Thread* thread, |
error_(0) { |
// TODO(mallinath) - Set preference value as per RFC 6544. |
// http://b/issue?id=7141794 |
-} |
- |
-bool TCPPort::Init() { |
if (allow_listen_) { |
- // Treat failure to create or bind a TCP socket as fatal. This |
- // should never happen. |
Taylor Brandstetter
2017/06/13 03:41:30
"this should never happen" - juberti, Oct 13, 2013
|
- socket_ = socket_factory()->CreateServerTcpSocket( |
- rtc::SocketAddress(ip(), 0), min_port(), max_port(), |
- false /* ssl */); |
- if (!socket_) { |
- LOG_J(LS_ERROR, this) << "TCP socket creation failed."; |
- return false; |
- } |
- socket_->SignalNewConnection.connect(this, &TCPPort::OnNewConnection); |
- socket_->SignalAddressReady.connect(this, &TCPPort::OnAddressReady); |
+ TryCreateServerSocket(); |
} |
- return true; |
} |
TCPPort::~TCPPort() { |
@@ -274,6 +260,20 @@ void TCPPort::OnNewConnection(rtc::AsyncPacketSocket* socket, |
incoming_.push_back(incoming); |
} |
+void TCPPort::TryCreateServerSocket() { |
+ // Treat failure to create or bind a TCP socket as fatal. This |
+ // should never happen. |
+ socket_ = socket_factory()->CreateServerTcpSocket( |
+ rtc::SocketAddress(ip(), 0), min_port(), max_port(), false /* ssl */); |
+ if (!socket_) { |
+ LOG_J(LS_WARNING, this) |
+ << "TCP server socket creation failed; continuing anyway."; |
+ return; |
+ } |
+ socket_->SignalNewConnection.connect(this, &TCPPort::OnNewConnection); |
+ socket_->SignalAddressReady.connect(this, &TCPPort::OnAddressReady); |
+} |
+ |
rtc::AsyncPacketSocket* TCPPort::GetIncoming( |
const rtc::SocketAddress& addr, bool remove) { |
rtc::AsyncPacketSocket* socket = NULL; |