diff options
author | Chris Robinson <[email protected]> | 2017-09-27 11:13:18 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2017-09-27 11:13:18 -0700 |
commit | 1ab890262168444c2f6e1a9d84c3d65e5afe37f5 (patch) | |
tree | 201157974888052def0b8c24cc3f61efa0ba0f8d /OpenAL32/alState.c | |
parent | fd70b0bca6dcc97edf16d4567c84933576828230 (diff) |
Re-update effect slots when context properties change
Also keep all free property update structs together in the context instead of
per-object.
Diffstat (limited to 'OpenAL32/alState.c')
-rw-r--r-- | OpenAL32/alState.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/OpenAL32/alState.c b/OpenAL32/alState.c index 14646043..a5565f87 100644 --- a/OpenAL32/alState.c +++ b/OpenAL32/alState.c @@ -786,7 +786,7 @@ void UpdateContextProps(ALCcontext *context) struct ALcontextProps *props; /* Get an unused proprty container, or allocate a new one as needed. */ - props = ATOMIC_LOAD(&context->FreeList, almemory_order_acquire); + props = ATOMIC_LOAD(&context->FreeContextProps, almemory_order_acquire); if(!props) props = al_calloc(16, sizeof(*props)); else @@ -794,7 +794,7 @@ void UpdateContextProps(ALCcontext *context) struct ALcontextProps *next; do { next = ATOMIC_LOAD(&props->next, almemory_order_relaxed); - } while(ATOMIC_COMPARE_EXCHANGE_PTR_WEAK(&context->FreeList, &props, next, + } while(ATOMIC_COMPARE_EXCHANGE_PTR_WEAK(&context->FreeContextProps, &props, next, almemory_order_seq_cst, almemory_order_acquire) == 0); } @@ -815,6 +815,6 @@ void UpdateContextProps(ALCcontext *context) /* If there was an unused update container, put it back in the * freelist. */ - ATOMIC_REPLACE_HEAD(struct ALcontextProps*, &context->FreeList, props); + ATOMIC_REPLACE_HEAD(struct ALcontextProps*, &context->FreeContextProps, props); } } |