diff --git a/src/libcamera/base/thread.cpp b/src/libcamera/base/thread.cpp index b94a3d74..bcb25ba6 100644 --- a/src/libcamera/base/thread.cpp +++ b/src/libcamera/base/thread.cpp @@ -244,7 +244,7 @@ Thread::Thread(std::string name) Thread::~Thread() { - delete data_->dispatcher_.load(std::memory_order_relaxed); + delete data_->dispatcher_.load(std::memory_order_acquire); } /** @@ -379,7 +379,7 @@ void Thread::exit(int code) data_->exitCode_ = code; data_->exit_.store(true, std::memory_order_release); - EventDispatcher *dispatcher = data_->dispatcher_.load(std::memory_order_relaxed); + EventDispatcher *dispatcher = data_->dispatcher_.load(std::memory_order_acquire); if (!dispatcher) return;