| Index: webrtc/p2p/client/basicportallocator.cc
|
| diff --git a/webrtc/p2p/client/basicportallocator.cc b/webrtc/p2p/client/basicportallocator.cc
|
| index 22abf33e93639d90b276ca9d6c5cc025fca3a6e0..edfd0219d05126f9a252224e4948e9a9294eaee1 100644
|
| --- a/webrtc/p2p/client/basicportallocator.cc
|
| +++ b/webrtc/p2p/client/basicportallocator.cc
|
| @@ -1080,13 +1080,13 @@ void AllocationSequence::OnReadPacket(
|
| // a STUN binding response, so we pass the message to TurnPort regardless of
|
| // the message type. The TurnPort will just ignore the message since it will
|
| // not find any request by transaction ID.
|
| - for (std::vector<TurnPort*>::const_iterator it = turn_ports_.begin();
|
| - it != turn_ports_.end(); ++it) {
|
| - TurnPort* port = *it;
|
| + for (TurnPort* port : turn_ports_) {
|
| if (port->server_address().address == remote_addr) {
|
| - port->HandleIncomingPacket(socket, data, size, remote_addr, packet_time);
|
| + if (port->HandleIncomingPacket(socket, data, size, remote_addr,
|
| + packet_time)) {
|
| + return;
|
| + }
|
| turn_port_found = true;
|
| - break;
|
| }
|
| }
|
|
|
| @@ -1097,8 +1097,9 @@ void AllocationSequence::OnReadPacket(
|
| // the TURN server is also a STUN server.
|
| if (!turn_port_found ||
|
| stun_servers.find(remote_addr) != stun_servers.end()) {
|
| - udp_port_->HandleIncomingPacket(
|
| - socket, data, size, remote_addr, packet_time);
|
| + RTC_DCHECK(udp_port_->SharedSocket());
|
| + udp_port_->HandleIncomingPacket(socket, data, size, remote_addr,
|
| + packet_time);
|
| }
|
| }
|
| }
|
|
|