Allow multiple Init() calls on FakeAudioDevice
This is temporarily needed while landing https://webrtc-review.googlesource.com/c/src/+/23820 and updating clients.
Bug: webrtc:4690
Change-Id: Ib0bd6a6a063a8a54c80b73853b2c042dfb02c44a
Reviewed-on: https://webrtc-review.googlesource.com/24501
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Fredrik Solenberg <solenberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20791}
diff --git a/test/fake_audio_device.cc b/test/fake_audio_device.cc
index eef8bfd..fa3f1f4 100644
--- a/test/fake_audio_device.cc
+++ b/test/fake_audio_device.cc
@@ -303,9 +303,13 @@
}
int32_t FakeAudioDevice::Init() {
- RTC_CHECK(tick_->StartTimer(true, kFrameLengthMs / speed_));
- thread_.Start();
- thread_.SetPriority(rtc::kHighPriority);
+ // TODO(solenberg): Temporarily allow multiple init calls.
+ if (!inited_) {
+ RTC_CHECK(tick_->StartTimer(true, kFrameLengthMs / speed_));
+ thread_.Start();
+ thread_.SetPriority(rtc::kHighPriority);
+ inited_ = true;
+ }
return 0;
}
diff --git a/test/fake_audio_device.h b/test/fake_audio_device.h
index f71fd01..4d90619 100644
--- a/test/fake_audio_device.h
+++ b/test/fake_audio_device.h
@@ -137,6 +137,7 @@
std::unique_ptr<EventTimerWrapper> tick_;
rtc::PlatformThread thread_;
+ bool inited_ = false;
};
} // namespace test
} // namespace webrtc