aboutsummaryrefslogtreecommitdiff
path: root/video
diff options
context:
space:
mode:
authorMarkus Handell <handellm@webrtc.org>2020-05-28 08:39:31 +0200
committerCommit Bot <commit-bot@chromium.org>2020-05-29 07:55:06 +0000
commit980e0c16b9117246f15da62300e966a276bf20b2 (patch)
tree65c197ed991a2f3f90cbddf9604cffe1d6313df1 /video
parent45b9192ad981dcdc12ad4aef087fff2195bd030c (diff)
downloadwebrtc-980e0c16b9117246f15da62300e966a276bf20b2.tar.gz
VideoSendStreamTest: remove lock recursions.
This change removes lock recursions and adds thread annotations. Bug: webrtc:11567 Change-Id: Id3f375ed925b0b8f3cad449d0971d9236088b1d5 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176225 Reviewed-by: Magnus Flodman <mflodman@webrtc.org> Commit-Queue: Markus Handell <handellm@webrtc.org> Cr-Commit-Position: refs/heads/master@{#31382}
Diffstat (limited to 'video')
-rw-r--r--video/video_send_stream_tests.cc21
1 files changed, 13 insertions, 8 deletions
diff --git a/video/video_send_stream_tests.cc b/video/video_send_stream_tests.cc
index 63acb80b8d..449e194ed2 100644
--- a/video/video_send_stream_tests.cc
+++ b/video/video_send_stream_tests.cc
@@ -2483,29 +2483,34 @@ TEST_F(VideoSendStreamTest, EncoderIsProperlyInitializedAndDestroyed) {
released_(false),
encoder_factory_(this) {}
- bool IsReleased() {
+ bool IsReleased() RTC_LOCKS_EXCLUDED(crit_) {
rtc::CritScope lock(&crit_);
return released_;
}
- bool IsReadyForEncode() {
+ bool IsReadyForEncode() RTC_LOCKS_EXCLUDED(crit_) {
rtc::CritScope lock(&crit_);
- return initialized_ && callback_registered_;
+ return IsReadyForEncodeLocked();
}
- size_t num_releases() {
+ size_t num_releases() RTC_LOCKS_EXCLUDED(crit_) {
rtc::CritScope lock(&crit_);
return num_releases_;
}
private:
+ bool IsReadyForEncodeLocked() RTC_EXCLUSIVE_LOCKS_REQUIRED(crit_) {
+ return initialized_ && callback_registered_;
+ }
+
void SetFecControllerOverride(
FecControllerOverride* fec_controller_override) override {
// Ignored.
}
int32_t InitEncode(const VideoCodec* codecSettings,
- const Settings& settings) override {
+ const Settings& settings) override
+ RTC_LOCKS_EXCLUDED(crit_) {
rtc::CritScope lock(&crit_);
EXPECT_FALSE(initialized_);
initialized_ = true;
@@ -2522,16 +2527,16 @@ TEST_F(VideoSendStreamTest, EncoderIsProperlyInitializedAndDestroyed) {
}
int32_t RegisterEncodeCompleteCallback(
- EncodedImageCallback* callback) override {
+ EncodedImageCallback* callback) override RTC_LOCKS_EXCLUDED(crit_) {
rtc::CritScope lock(&crit_);
EXPECT_TRUE(initialized_);
callback_registered_ = true;
return 0;
}
- int32_t Release() override {
+ int32_t Release() override RTC_LOCKS_EXCLUDED(crit_) {
rtc::CritScope lock(&crit_);
- EXPECT_TRUE(IsReadyForEncode());
+ EXPECT_TRUE(IsReadyForEncodeLocked());
EXPECT_FALSE(released_);
initialized_ = false;
callback_registered_ = false;