diff options
Diffstat (limited to 'al/listener.cpp')
-rw-r--r-- | al/listener.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/al/listener.cpp b/al/listener.cpp index a260c93c..9484d9b1 100644 --- a/al/listener.cpp +++ b/al/listener.cpp @@ -40,16 +40,18 @@ namespace { inline void UpdateProps(ALCcontext *context) { - if(!context->mDeferUpdates.load(std::memory_order_acquire)) + if(!context->mDeferUpdates) + { UpdateContextProps(context); - else - context->mPropsDirty.set(std::memory_order_release); + return; + } + context->mPropsDirty = true; } #ifdef ALSOFT_EAX inline void CommitAndUpdateProps(ALCcontext *context) { - if(!context->mDeferUpdates.load(std::memory_order_acquire)) + if(!context->mDeferUpdates) { if(context->has_eax()) { @@ -62,9 +64,9 @@ inline void CommitAndUpdateProps(ALCcontext *context) } UpdateContextProps(context); context->mHoldUpdates.store(false, std::memory_order_release); + return; } - else - context->mPropsDirty.set(std::memory_order_release); + context->mPropsDirty = true; } #else |