diff options
Diffstat (limited to 'alc')
-rw-r--r-- | alc/alc.cpp | 2 | ||||
-rw-r--r-- | alc/alcontext.h | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/alc/alc.cpp b/alc/alc.cpp index bd88023b..31d06993 100644 --- a/alc/alc.cpp +++ b/alc/alc.cpp @@ -1621,7 +1621,7 @@ void SetDefaultChannelOrder(ALCdevice *device) void ALCcontext::processUpdates() { std::lock_guard<std::mutex> _{mPropLock}; - if(mDeferUpdates.exchange(false)) + if(mDeferUpdates.exchange(false, std::memory_order_acq_rel)) { /* Tell the mixer to stop applying updates, then wait for any active * updating to finish, before providing updates. diff --git a/alc/alcontext.h b/alc/alcontext.h index a3da7e10..d62fc7d5 100644 --- a/alc/alcontext.h +++ b/alc/alcontext.h @@ -217,7 +217,7 @@ struct ALCcontext : public al::intrusive_ref<ALCcontext> { * This does *NOT* stop mixing, but rather prevents certain property * changes from taking effect. */ - void deferUpdates() noexcept { mDeferUpdates.store(true); } + void deferUpdates() noexcept { mDeferUpdates.exchange(true, std::memory_order_acq_rel); } /** Resumes update processing after being deferred. */ void processUpdates(); |