diff options
author | Chris Robinson <[email protected]> | 2011-09-10 07:18:29 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2011-09-10 07:18:29 -0700 |
commit | 419294cddd7a437eb8d4bc5c0ffa6861d794d99b (patch) | |
tree | 0536691ef5ba70d257e29df96dad08e9d3c6631f /OpenAL32 | |
parent | b9448a476e7e4f7e3077265fd894190f6c836c59 (diff) |
Avoid locking the device when adding and removing contexts
Also, don't keep track of the number of contexts per device
Diffstat (limited to 'OpenAL32')
-rw-r--r-- | OpenAL32/Include/alMain.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/OpenAL32/Include/alMain.h b/OpenAL32/Include/alMain.h index 7c042b55..ddc3857f 100644 --- a/OpenAL32/Include/alMain.h +++ b/OpenAL32/Include/alMain.h @@ -569,8 +569,7 @@ struct ALCdevice_struct ALfloat PendingClicks[MAXCHANNELS]; // Contexts created on this device - ALCcontext *ContextList; - ALuint NumContexts; + ALCcontext *volatile ContextList; BackendFuncs *Funcs; void *ExtraData; // For the backend's use @@ -633,7 +632,7 @@ struct ALCcontext_struct ALCdevice *Device; const ALCchar *ExtensionList; - ALCcontext *next; + ALCcontext *volatile next; }; void ALCcontext_IncRef(ALCcontext *context); |