Index: webrtc/p2p/client/basicportallocator.cc |
diff --git a/webrtc/p2p/client/basicportallocator.cc b/webrtc/p2p/client/basicportallocator.cc |
index a14f85b6f289c0516ef732540b9081b5e6146d05..e45d2c8f0f30ffec271d1804808c9de9d11cbecc 100644 |
--- a/webrtc/p2p/client/basicportallocator.cc |
+++ b/webrtc/p2p/client/basicportallocator.cc |
@@ -10,6 +10,7 @@ |
#include "webrtc/p2p/client/basicportallocator.h" |
+#include <algorithm> |
#include <string> |
#include <vector> |
@@ -70,15 +71,16 @@ BasicPortAllocator::BasicPortAllocator( |
: network_manager_(network_manager), |
socket_factory_(socket_factory), |
stun_servers_() { |
- ASSERT(socket_factory_ != NULL); |
+ ASSERT(network_manager_ != nullptr); |
+ ASSERT(socket_factory_ != nullptr); |
Construct(); |
} |
-BasicPortAllocator::BasicPortAllocator( |
- rtc::NetworkManager* network_manager) |
+BasicPortAllocator::BasicPortAllocator(rtc::NetworkManager* network_manager) |
: network_manager_(network_manager), |
- socket_factory_(NULL), |
+ socket_factory_(nullptr), |
stun_servers_() { |
+ ASSERT(network_manager_ != nullptr); |
Construct(); |
} |
@@ -327,6 +329,12 @@ void BasicPortAllocatorSession::GetNetworks( |
} else { |
network_manager->GetNetworks(networks); |
} |
+ networks->erase(std::remove_if(networks->begin(), networks->end(), |
+ [this](rtc::Network* network) { |
+ return allocator_->network_ignore_mask() & |
+ network->type(); |
+ }), |
+ networks->end()); |
} |
// For each network, see if we have a sequence that covers it already. If not, |