summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorguoweis@webrtc.org <guoweis@webrtc.org>2014-09-19 21:06:12 +0000
committerguoweis@webrtc.org <guoweis@webrtc.org>2014-09-19 21:06:12 +0000
commit1373d9fc5b9d1141c1b9e08a60dc6e3309a6928d (patch)
treebc4103cb2c9c604fb74ca73bf22b4eef41e919f6
parentaeeb8f3767eb7f3bd4d058a8a9b39d1a3b2259a8 (diff)
downloadtalk-1373d9fc5b9d1141c1b9e08a60dc6e3309a6928d.tar.gz
Reapply 23529005 after fixing the build break issue (Chromium:582133002)
Review URL: https://webrtc-codereview.appspot.com/23529005 git-svn-id: http://webrtc.googlecode.com/svn/trunk/talk@7253 4adac7df-926f-26a2-2b94-8c16560cd09d
-rw-r--r--app/webrtc/peerconnection.cc16
1 files changed, 13 insertions, 3 deletions
diff --git a/app/webrtc/peerconnection.cc b/app/webrtc/peerconnection.cc
index 3698381..d133889 100644
--- a/app/webrtc/peerconnection.cc
+++ b/app/webrtc/peerconnection.cc
@@ -39,6 +39,9 @@
#include "talk/session/media/channelmanager.h"
#include "webrtc/base/logging.h"
#include "webrtc/base/stringencode.h"
+#ifdef WEBRTC_CHROMIUM_BUILD
+#include "webrtc/system_wrappers/interface/field_trial.h"
+#endif
namespace {
@@ -353,12 +356,19 @@ bool PeerConnection::DoInitialize(
cricket::PORTALLOCATOR_ENABLE_SHARED_UFRAG |
cricket::PORTALLOCATOR_ENABLE_SHARED_SOCKET;
bool value;
+ // If IPv6 flag was specified, we'll not override it by experiment.
if (FindConstraint(
- constraints,
- MediaConstraintsInterface::kEnableIPv6,
- &value, NULL) && value) {
+ constraints, MediaConstraintsInterface::kEnableIPv6, &value, NULL)) {
+ if (value) {
+ portallocator_flags |= cricket::PORTALLOCATOR_ENABLE_IPV6;
+ }
+ }
+#ifdef WEBRTC_CHROMIUM_BUILD
+ else if (webrtc::field_trial::FindFullName("WebRTC-IPv6Default") ==
+ "Enabled") {
portallocator_flags |= cricket::PORTALLOCATOR_ENABLE_IPV6;
}
+#endif // WEBRTC_CHROMIUM_BUILD
port_allocator_->set_flags(portallocator_flags);
// No step delay is used while allocating ports.