| Index: webrtc/api/quicdatachannel.cc
|
| diff --git a/webrtc/api/quicdatachannel.cc b/webrtc/api/quicdatachannel.cc
|
| index 5493382e1a022650b997d678a7742b24b6fc14be..f4f573276c11711ce64db03a71c7c2ab5018afa8 100644
|
| --- a/webrtc/api/quicdatachannel.cc
|
| +++ b/webrtc/api/quicdatachannel.cc
|
| @@ -61,12 +61,10 @@
|
|
|
| QuicDataChannel::QuicDataChannel(rtc::Thread* signaling_thread,
|
| rtc::Thread* worker_thread,
|
| - rtc::Thread* network_thread,
|
| const std::string& label,
|
| const DataChannelInit& config)
|
| : signaling_thread_(signaling_thread),
|
| worker_thread_(worker_thread),
|
| - network_thread_(network_thread),
|
| id_(config.id),
|
| state_(kConnecting),
|
| buffered_amount_(0),
|
| @@ -93,12 +91,12 @@
|
| << " is not open so cannot send.";
|
| return false;
|
| }
|
| - return network_thread_->Invoke<bool>(
|
| - RTC_FROM_HERE, rtc::Bind(&QuicDataChannel::Send_n, this, buffer));
|
| -}
|
| -
|
| -bool QuicDataChannel::Send_n(const DataBuffer& buffer) {
|
| - RTC_DCHECK(network_thread_->IsCurrent());
|
| + return worker_thread_->Invoke<bool>(
|
| + RTC_FROM_HERE, rtc::Bind(&QuicDataChannel::Send_w, this, buffer));
|
| +}
|
| +
|
| +bool QuicDataChannel::Send_w(const DataBuffer& buffer) {
|
| + RTC_DCHECK(worker_thread_->IsCurrent());
|
|
|
| // Encode and send the header containing the data channel ID and message ID.
|
| rtc::CopyOnWriteBuffer header;
|
| @@ -258,7 +256,7 @@
|
| }
|
|
|
| void QuicDataChannel::OnIncomingMessage(Message&& message) {
|
| - RTC_DCHECK(network_thread_->IsCurrent());
|
| + RTC_DCHECK(worker_thread_->IsCurrent());
|
| RTC_DCHECK(message.stream);
|
| if (!observer_) {
|
| LOG(LS_WARNING) << "QUIC data channel " << id_
|
| @@ -297,7 +295,7 @@
|
| void QuicDataChannel::OnDataReceived(net::QuicStreamId stream_id,
|
| const char* data,
|
| size_t len) {
|
| - RTC_DCHECK(network_thread_->IsCurrent());
|
| + RTC_DCHECK(worker_thread_->IsCurrent());
|
| RTC_DCHECK(data);
|
| const auto& kv = incoming_quic_messages_.find(stream_id);
|
| if (kv == incoming_quic_messages_.end()) {
|
| @@ -327,7 +325,7 @@
|
| }
|
|
|
| void QuicDataChannel::OnReadyToSend(cricket::TransportChannel* channel) {
|
| - RTC_DCHECK(network_thread_->IsCurrent());
|
| + RTC_DCHECK(worker_thread_->IsCurrent());
|
| RTC_DCHECK(channel == quic_transport_channel_);
|
| LOG(LS_INFO) << "QuicTransportChannel is ready to send";
|
| invoker_.AsyncInvoke<void>(
|
| @@ -344,7 +342,7 @@
|
|
|
| void QuicDataChannel::OnIncomingQueuedStreamClosed(net::QuicStreamId stream_id,
|
| int error) {
|
| - RTC_DCHECK(network_thread_->IsCurrent());
|
| + RTC_DCHECK(worker_thread_->IsCurrent());
|
| LOG(LS_VERBOSE) << "Incoming queued stream " << stream_id << " is closed.";
|
| incoming_quic_messages_.erase(stream_id);
|
| }
|
|
|