| Index: content/renderer/media/rtc_peer_connection_handler.h
|
| diff --git a/content/renderer/media/rtc_peer_connection_handler.h b/content/renderer/media/rtc_peer_connection_handler.h
|
| index 95846af2ae772566eea948a4975fc5203156da75..32b0e2b0ce4759f432f26f8658f33e0d931f1b90 100644
|
| --- a/content/renderer/media/rtc_peer_connection_handler.h
|
| +++ b/content/renderer/media/rtc_peer_connection_handler.h
|
| @@ -204,6 +204,15 @@ class CONTENT_EXPORT RTCPeerConnectionHandler
|
| const std::string& sdp, const std::string& type,
|
| webrtc::SdpParseError* error);
|
|
|
| + // Report to UMA whether an IceConnectionState has occurred. It only records
|
| + // the first occurrence of a given state.
|
| + void ReportICEState(
|
| + webrtc::PeerConnectionInterface::IceConnectionState new_state);
|
| +
|
| + // Reset UMA related members to the initial state. This is invoked at the
|
| + // constructor as well as after Ice Restart.
|
| + void ResetUMAStats();
|
| +
|
| // Virtual to allow mocks to override.
|
| virtual scoped_refptr<base::SingleThreadTaskRunner> signaling_thread() const;
|
|
|
| @@ -219,7 +228,7 @@ class CONTENT_EXPORT RTCPeerConnectionHandler
|
| // RenderThreadImpl.
|
| PeerConnectionDependencyFactory* const dependency_factory_;
|
|
|
| - blink::WebFrame* frame_;
|
| + blink::WebFrame* frame_ = nullptr;
|
|
|
| ScopedVector<WebRtcMediaStreamAdapter> local_streams_;
|
|
|
| @@ -228,11 +237,11 @@ class CONTENT_EXPORT RTCPeerConnectionHandler
|
| MediaStreamTrackMetrics track_metrics_;
|
|
|
| // Counter for a UMA stat reported at destruction time.
|
| - int num_data_channels_created_;
|
| + int num_data_channels_created_ = 0;
|
|
|
| // Counter for number of IPv4 and IPv6 local candidates.
|
| - int num_local_candidates_ipv4_;
|
| - int num_local_candidates_ipv6_;
|
| + int num_local_candidates_ipv4_ = 0;
|
| + int num_local_candidates_ipv6_ = 0;
|
|
|
| // To make sure the observer is released after the native_peer_connection_,
|
| // it has to come first.
|
| @@ -246,6 +255,10 @@ class CONTENT_EXPORT RTCPeerConnectionHandler
|
| RemoteStreamMap remote_streams_;
|
| scoped_refptr<webrtc::UMAObserver> uma_observer_;
|
| base::TimeTicks ice_connection_checking_start_;
|
| +
|
| + // Track which ICE Connection state that this PeerConnection has gone through.
|
| + bool ice_state_seen_[webrtc::PeerConnectionInterface::kIceConnectionMax] = {};
|
| +
|
| base::WeakPtrFactory<RTCPeerConnectionHandler> weak_factory_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(RTCPeerConnectionHandler);
|
|
|