diff options
author | Chris Robinson <[email protected]> | 2016-08-23 18:56:01 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2016-08-23 18:56:01 -0700 |
commit | dc8b7814c771d08abe61656b745e7763a010a3a3 (patch) | |
tree | 9d1f91b7829d2a7d29654d708a837bbf6cfb99c3 /Alc/ALc.c | |
parent | bd054632e0ba42ad93dd3bcad54042a126a65646 (diff) |
Avoid resupplying unneeded source updates
The source's voice holds a copy of the last properties it received, so listener
updates can make sources recalculate internal properties from that stored copy.
Diffstat (limited to 'Alc/ALc.c')
-rw-r--r-- | Alc/ALc.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -1602,8 +1602,6 @@ void ALCcontext_ProcessUpdates(ALCcontext *context) { ALsizei pos; - UpdateListenerProps(context); - LockUIntMapRead(&context->SourceMap); V0(device->Backend,lock)(); for(pos = 0;pos < context->SourceMap.size;pos++) @@ -1626,6 +1624,8 @@ void ALCcontext_ProcessUpdates(ALCcontext *context) } V0(device->Backend,unlock)(); UnlockUIntMapRead(&context->SourceMap); + + UpdateListenerProps(context); UpdateAllSourceProps(context); } ReadUnlock(&context->PropLock); |