| 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 c5c68e4d7418ba6b9d591e72cfbb5fd56e2e8657..70755bd6f42d78f085fda61a2fa41d84ea611a8a 100644
|
| --- a/content/renderer/media/rtc_peer_connection_handler.cc
|
| +++ b/content/renderer/media/rtc_peer_connection_handler.cc
|
| @@ -390,7 +390,9 @@ RTCPeerConnectionHandler::RTCPeerConnectionHandler(
|
| dependency_factory_(dependency_factory),
|
| frame_(NULL),
|
| peer_connection_tracker_(NULL),
|
| - num_data_channels_created_(0) {
|
| + num_data_channels_created_(0),
|
| + num_local_candidates_ipv4_(0),
|
| + num_local_candidates_ipv6_(0) {
|
| g_peer_connection_handlers.Get().insert(this);
|
| }
|
|
|
| @@ -894,6 +896,12 @@ void RTCPeerConnectionHandler::OnIceGatheringChange(
|
| // to signal end of candidates.
|
| blink::WebRTCICECandidate null_candidate;
|
| client_->didGenerateICECandidate(null_candidate);
|
| +
|
| + UMA_HISTOGRAM_COUNTS_100("WebRTC.PeerConnection.IPv4LocalCandidates",
|
| + num_local_candidates_ipv4_);
|
| +
|
| + UMA_HISTOGRAM_COUNTS_100("WebRTC.PeerConnection.IPv6LocalCandidates",
|
| + num_local_candidates_ipv6_);
|
| }
|
|
|
| blink::WebRTCPeerConnectionHandlerClient::ICEGatheringState state =
|
| @@ -968,6 +976,14 @@ void RTCPeerConnectionHandler::OnIceCandidate(
|
| peer_connection_tracker_->TrackAddIceCandidate(
|
| this, web_candidate, PeerConnectionTracker::SOURCE_LOCAL, true);
|
|
|
| + if (candidate->candidate().address().family() == AF_INET) {
|
| + num_local_candidates_ipv4_++;
|
| + } else if (candidate->candidate().address().family() == AF_INET6) {
|
| + num_local_candidates_ipv6_++;
|
| + } else {
|
| + NOTREACHED();
|
| + }
|
| +
|
| client_->didGenerateICECandidate(web_candidate);
|
| }
|
|
|
|
|