Moved AsyncInvoker to be destructed first in WebRtcVideoSendStream.

Bug: none
Change-Id: Ie90c9d6fd415678affcc4acefdd045334d83d8b2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140864
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28283}
This commit is contained in:
philipel
2019-06-14 11:28:51 +02:00
committed by Commit Bot
parent 7f2a67f8ce
commit 98cbb22911

View File

@ -349,7 +349,6 @@ class WebRtcVideoChannel : public VideoMediaChannel, public webrtc::Transport {
RTC_EXCLUSIVE_LOCKS_REQUIRED(&thread_checker_);
rtc::ThreadChecker thread_checker_;
rtc::AsyncInvoker invoker_;
rtc::Thread* worker_thread_;
const std::vector<uint32_t> ssrcs_ RTC_GUARDED_BY(&thread_checker_);
const std::vector<SsrcGroup> ssrc_groups_ RTC_GUARDED_BY(&thread_checker_);
@ -373,6 +372,11 @@ class WebRtcVideoChannel : public VideoMediaChannel, public webrtc::Transport {
webrtc::RtpParameters rtp_parameters_ RTC_GUARDED_BY(&thread_checker_);
bool sending_ RTC_GUARDED_BY(&thread_checker_);
// In order for the |invoker_| to protect other members from being
// destructed as they are used in asynchronous tasks it has to be destructed
// first.
rtc::AsyncInvoker invoker_;
};
// Wrapper for the receiver part, contains configs etc. that are needed to