Remove a couple context lock wrapper functions

This commit is contained in:
Chris Robinson 2017-02-07 19:32:49 -08:00
parent 7cc8ba99f0
commit 5bd63ff03d
3 changed files with 17 additions and 26 deletions

View File

@ -1496,9 +1496,6 @@ static ALCboolean IsValidALCChannels(ALCenum channels)
* Miscellaneous ALC helpers * Miscellaneous ALC helpers
************************************************/ ************************************************/
extern inline void LockContext(ALCcontext *context);
extern inline void UnlockContext(ALCcontext *context);
void ALCdevice_Lock(ALCdevice *device) void ALCdevice_Lock(ALCdevice *device)
{ {
V0(device->Backend,lock)(); V0(device->Backend,lock)();

View File

@ -822,12 +822,6 @@ void ALCdevice_Unlock(ALCdevice *device);
void ALCcontext_DeferUpdates(ALCcontext *context, ALenum type); void ALCcontext_DeferUpdates(ALCcontext *context, ALenum type);
void ALCcontext_ProcessUpdates(ALCcontext *context); void ALCcontext_ProcessUpdates(ALCcontext *context);
inline void LockContext(ALCcontext *context)
{ ALCdevice_Lock(context->Device); }
inline void UnlockContext(ALCcontext *context)
{ ALCdevice_Unlock(context->Device); }
enum { enum {
DeferOff = AL_FALSE, DeferOff = AL_FALSE,
DeferAll, DeferAll,

View File

@ -527,16 +527,16 @@ static ALboolean SetSourcefv(ALsource *Source, ALCcontext *Context, SourceProp p
if((Source->state == AL_PLAYING || Source->state == AL_PAUSED) && if((Source->state == AL_PLAYING || Source->state == AL_PAUSED) &&
!ATOMIC_LOAD(&Context->DeferUpdates, almemory_order_acquire)) !ATOMIC_LOAD(&Context->DeferUpdates, almemory_order_acquire))
{ {
LockContext(Context); ALCdevice_Lock(Context->Device);
WriteLock(&Source->queue_lock); WriteLock(&Source->queue_lock);
if(ApplyOffset(Source) == AL_FALSE) if(ApplyOffset(Source) == AL_FALSE)
{ {
WriteUnlock(&Source->queue_lock); WriteUnlock(&Source->queue_lock);
UnlockContext(Context); ALCdevice_Unlock(Context->Device);
SET_ERROR_AND_RETURN_VALUE(Context, AL_INVALID_VALUE, AL_FALSE); SET_ERROR_AND_RETURN_VALUE(Context, AL_INVALID_VALUE, AL_FALSE);
} }
WriteUnlock(&Source->queue_lock); WriteUnlock(&Source->queue_lock);
UnlockContext(Context); ALCdevice_Unlock(Context->Device);
} }
return AL_TRUE; return AL_TRUE;
@ -728,16 +728,16 @@ static ALboolean SetSourceiv(ALsource *Source, ALCcontext *Context, SourceProp p
if((Source->state == AL_PLAYING || Source->state == AL_PAUSED) && if((Source->state == AL_PLAYING || Source->state == AL_PAUSED) &&
!ATOMIC_LOAD(&Context->DeferUpdates, almemory_order_acquire)) !ATOMIC_LOAD(&Context->DeferUpdates, almemory_order_acquire))
{ {
LockContext(Context); ALCdevice_Lock(Context->Device);
WriteLock(&Source->queue_lock); WriteLock(&Source->queue_lock);
if(ApplyOffset(Source) == AL_FALSE) if(ApplyOffset(Source) == AL_FALSE)
{ {
WriteUnlock(&Source->queue_lock); WriteUnlock(&Source->queue_lock);
UnlockContext(Context); ALCdevice_Unlock(Context->Device);
SET_ERROR_AND_RETURN_VALUE(Context, AL_INVALID_VALUE, AL_FALSE); SET_ERROR_AND_RETURN_VALUE(Context, AL_INVALID_VALUE, AL_FALSE);
} }
WriteUnlock(&Source->queue_lock); WriteUnlock(&Source->queue_lock);
UnlockContext(Context); ALCdevice_Unlock(Context->Device);
} }
return AL_TRUE; return AL_TRUE;
@ -1606,10 +1606,10 @@ AL_API ALvoid AL_APIENTRY alDeleteSources(ALsizei n, const ALuint *sources)
continue; continue;
FreeThunkEntry(Source->id); FreeThunkEntry(Source->id);
LockContext(context); ALCdevice_Lock(context->Device);
voice = GetSourceVoice(Source, context); voice = GetSourceVoice(Source, context);
if(voice) voice->Source = NULL; if(voice) voice->Source = NULL;
UnlockContext(context); ALCdevice_Unlock(context->Device);
DeinitSource(Source); DeinitSource(Source);
@ -2303,7 +2303,7 @@ AL_API ALvoid AL_APIENTRY alSourcePlayv(ALsizei n, const ALuint *sources)
SET_ERROR_AND_GOTO(context, AL_INVALID_NAME, done); SET_ERROR_AND_GOTO(context, AL_INVALID_NAME, done);
} }
LockContext(context); ALCdevice_Lock(context->Device);
while(n > context->MaxVoices-context->VoiceCount) while(n > context->MaxVoices-context->VoiceCount)
{ {
ALvoice *temp = NULL; ALvoice *temp = NULL;
@ -2314,7 +2314,7 @@ AL_API ALvoid AL_APIENTRY alSourcePlayv(ALsizei n, const ALuint *sources)
temp = al_malloc(16, newcount * sizeof(context->Voices[0])); temp = al_malloc(16, newcount * sizeof(context->Voices[0]));
if(!temp) if(!temp)
{ {
UnlockContext(context); ALCdevice_Unlock(context->Device);
SET_ERROR_AND_GOTO(context, AL_OUT_OF_MEMORY, done); SET_ERROR_AND_GOTO(context, AL_OUT_OF_MEMORY, done);
} }
memcpy(temp, context->Voices, context->MaxVoices * sizeof(temp[0])); memcpy(temp, context->Voices, context->MaxVoices * sizeof(temp[0]));
@ -2341,7 +2341,7 @@ AL_API ALvoid AL_APIENTRY alSourcePlayv(ALsizei n, const ALuint *sources)
SetSourceState(source, context, AL_PLAYING); SetSourceState(source, context, AL_PLAYING);
} }
} }
UnlockContext(context); ALCdevice_Unlock(context->Device);
done: done:
UnlockSourcesRead(context); UnlockSourcesRead(context);
@ -2370,7 +2370,7 @@ AL_API ALvoid AL_APIENTRY alSourcePausev(ALsizei n, const ALuint *sources)
SET_ERROR_AND_GOTO(context, AL_INVALID_NAME, done); SET_ERROR_AND_GOTO(context, AL_INVALID_NAME, done);
} }
LockContext(context); ALCdevice_Lock(context->Device);
if(ATOMIC_LOAD(&context->DeferUpdates, almemory_order_acquire)) if(ATOMIC_LOAD(&context->DeferUpdates, almemory_order_acquire))
{ {
for(i = 0;i < n;i++) for(i = 0;i < n;i++)
@ -2387,7 +2387,7 @@ AL_API ALvoid AL_APIENTRY alSourcePausev(ALsizei n, const ALuint *sources)
SetSourceState(source, context, AL_PAUSED); SetSourceState(source, context, AL_PAUSED);
} }
} }
UnlockContext(context); ALCdevice_Unlock(context->Device);
done: done:
UnlockSourcesRead(context); UnlockSourcesRead(context);
@ -2416,14 +2416,14 @@ AL_API ALvoid AL_APIENTRY alSourceStopv(ALsizei n, const ALuint *sources)
SET_ERROR_AND_GOTO(context, AL_INVALID_NAME, done); SET_ERROR_AND_GOTO(context, AL_INVALID_NAME, done);
} }
LockContext(context); ALCdevice_Lock(context->Device);
for(i = 0;i < n;i++) for(i = 0;i < n;i++)
{ {
source = LookupSource(context, sources[i]); source = LookupSource(context, sources[i]);
source->new_state = AL_NONE; source->new_state = AL_NONE;
SetSourceState(source, context, AL_STOPPED); SetSourceState(source, context, AL_STOPPED);
} }
UnlockContext(context); ALCdevice_Unlock(context->Device);
done: done:
UnlockSourcesRead(context); UnlockSourcesRead(context);
@ -2452,14 +2452,14 @@ AL_API ALvoid AL_APIENTRY alSourceRewindv(ALsizei n, const ALuint *sources)
SET_ERROR_AND_GOTO(context, AL_INVALID_NAME, done); SET_ERROR_AND_GOTO(context, AL_INVALID_NAME, done);
} }
LockContext(context); ALCdevice_Lock(context->Device);
for(i = 0;i < n;i++) for(i = 0;i < n;i++)
{ {
source = LookupSource(context, sources[i]); source = LookupSource(context, sources[i]);
source->new_state = AL_NONE; source->new_state = AL_NONE;
SetSourceState(source, context, AL_INITIAL); SetSourceState(source, context, AL_INITIAL);
} }
UnlockContext(context); ALCdevice_Unlock(context->Device);
done: done:
UnlockSourcesRead(context); UnlockSourcesRead(context);