Chromium Code Reviews| Index: content/renderer/media/rtc_peer_connection_handler.cc |
| diff --git a/content/renderer/media/rtc_peer_connection_handler.cc b/content/renderer/media/rtc_peer_connection_handler.cc |
| index 626e5c91eb70f8eac21a3230002662126aa386f1..5b4f4cfd1952477c1988342e9d5395fcf4bba16b 100644 |
| --- a/content/renderer/media/rtc_peer_connection_handler.cc |
| +++ b/content/renderer/media/rtc_peer_connection_handler.cc |
| @@ -185,18 +185,32 @@ void GetSdpAndTypeFromSessionDescription( |
| void GetNativeRtcConfiguration( |
| const blink::WebRTCConfiguration& blink_config, |
| webrtc::PeerConnectionInterface::RTCConfiguration* webrtc_config) { |
| - if (blink_config.isNull() || !webrtc_config) |
| + if (!webrtc_config) |
|
tommi (sloooow) - chröme
2015/09/16 18:13:40
Is this even possible? maybe we should just replac
guoweis_left_chromium
2015/09/16 18:51:03
Done.
|
| return; |
| - for (size_t i = 0; i < blink_config.numberOfServers(); ++i) { |
| - webrtc::PeerConnectionInterface::IceServer server; |
| - const blink::WebRTCICEServer& webkit_server = |
| - blink_config.server(i); |
| - server.username = |
| - base::UTF16ToUTF8(base::StringPiece16(webkit_server.username())); |
| - server.password = |
| - base::UTF16ToUTF8(base::StringPiece16(webkit_server.credential())); |
| - server.uri = webkit_server.uri().spec(); |
| - webrtc_config->servers.push_back(server); |
| + |
| + // When we don't have WebRTCConfiguration, treat it as a special case where we |
| + // should generate local host candidate. This will only be honored if |
| + // enable_multiple_routes is disabled. |
| + if (blink_config.isNull()) { |
| + webrtc_config->enable_localhost_ice_candidate = true; |
|
tommi (sloooow) - chröme
2015/09/16 18:13:40
this line, line 201 and the scope starting in 203
guoweis_left_chromium
2015/09/16 18:51:03
Yes, it was initialized to be false in the ctor of
|
| + return; |
| + } |
| + |
| + if (blink_config.iceServers().isNull()) { |
| + // Same as when iceServers is undefined or unspecified. |
| + webrtc_config->enable_localhost_ice_candidate = true; |
| + } else { |
| + for (size_t i = 0; i < blink_config.iceServers().numberOfServers(); ++i) { |
| + webrtc::PeerConnectionInterface::IceServer server; |
| + const blink::WebRTCICEServer& webkit_server = |
| + blink_config.iceServers().server(i); |
| + server.username = |
| + base::UTF16ToUTF8(base::StringPiece16(webkit_server.username())); |
| + server.password = |
| + base::UTF16ToUTF8(base::StringPiece16(webkit_server.credential())); |
| + server.uri = webkit_server.uri().spec(); |
| + webrtc_config->servers.push_back(server); |
| + } |
| } |
| switch (blink_config.iceTransports()) { |