| Index: webrtc/pc/webrtcsession.cc
|
| diff --git a/webrtc/pc/webrtcsession.cc b/webrtc/pc/webrtcsession.cc
|
| index cc424b222e081c994b6a7e546f59c126d86a7c01..ddf5ba760a7a41c9ec8aaceac91a1b1fbba6f8a8 100644
|
| --- a/webrtc/pc/webrtcsession.cc
|
| +++ b/webrtc/pc/webrtcsession.cc
|
| @@ -630,7 +630,9 @@ bool WebRtcSession::Initialize(
|
|
|
| void WebRtcSession::Close() {
|
| SetState(STATE_CLOSED);
|
| + call_ = nullptr;
|
| RemoveUnusedChannels(nullptr);
|
| + RTC_DCHECK(!call_);
|
| RTC_DCHECK(!voice_channel_);
|
| RTC_DCHECK(!video_channel_);
|
| RTC_DCHECK(!rtp_data_channel_);
|
| @@ -1895,6 +1897,15 @@ bool WebRtcSession::CreateDataChannel(const cricket::ContentInfo* content,
|
| return true;
|
| }
|
|
|
| +Call::Stats WebRtcSession::GetCallStats() {
|
| + if (!worker_thread()->IsCurrent()) {
|
| + return worker_thread()->Invoke<Call::Stats>(
|
| + RTC_FROM_HERE, rtc::Bind(&WebRtcSession::GetCallStats, this));
|
| + }
|
| + RTC_DCHECK(call_);
|
| + return call_->GetStats();
|
| +}
|
| +
|
| std::unique_ptr<SessionStats> WebRtcSession::GetStats_n(
|
| const ChannelNamePairs& channel_name_pairs) {
|
| RTC_DCHECK(network_thread()->IsCurrent());
|
| @@ -2317,7 +2328,8 @@ void WebRtcSession::ReportNegotiatedCiphers(
|
|
|
| void WebRtcSession::OnSentPacket_w(const rtc::SentPacket& sent_packet) {
|
| RTC_DCHECK(worker_thread()->IsCurrent());
|
| - call_->OnSentPacket(sent_packet);
|
| + if (call_)
|
| + call_->OnSentPacket(sent_packet);
|
| }
|
|
|
| const std::string WebRtcSession::GetTransportName(
|
|
|