From 46e4b3eca7cfca75fbbbf85d88a2f8e939978edd Mon Sep 17 00:00:00 2001 From: Guogang Li Date: Fri, 28 Apr 2023 22:24:01 -0700 Subject: [PATCH] Fixed a data race bug in test codes PiperOrigin-RevId: 528074883 --- internal/test/fake_clock.cc | 5 +++++ internal/test/fake_clock.h | 1 + 2 files changed, 6 insertions(+) diff --git a/internal/test/fake_clock.cc b/internal/test/fake_clock.cc index 57c6b29d..3f464ea6 100644 --- a/internal/test/fake_clock.cc +++ b/internal/test/fake_clock.cc @@ -21,6 +21,11 @@ namespace nearby { +FakeClock::~FakeClock() { + absl::MutexLock lock(&mutex_); + observers_.clear(); +} + absl::Time FakeClock::Now() const { absl::MutexLock lock(&mutex_); return now_; diff --git a/internal/test/fake_clock.h b/internal/test/fake_clock.h index 7cef161a..8c077e18 100644 --- a/internal/test/fake_clock.h +++ b/internal/test/fake_clock.h @@ -33,6 +33,7 @@ class FakeClock : public Clock { FakeClock() { now_ = absl::Now(); } FakeClock(FakeClock&&) = default; FakeClock& operator=(FakeClock&&) = default; + ~FakeClock() override ABSL_LOCKS_EXCLUDED(mutex_); absl::Time Now() const override;