diff options
-rw-r--r-- | OpenAL32/alBuffer.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/OpenAL32/alBuffer.c b/OpenAL32/alBuffer.c index 754a5b35..759062aa 100644 --- a/OpenAL32/alBuffer.c +++ b/OpenAL32/alBuffer.c @@ -838,13 +838,15 @@ AL_API void AL_APIENTRY alBufferiv(ALuint buffer, ALenum eParam, const ALint* pl ALCdevice *device; ALbuffer *ALBuf; - (void)plValues; - pContext = GetContextSuspended(); if(!pContext) return; device = pContext->Device; - if((ALBuf=LookupBuffer(device->BufferMap, buffer)) != NULL) + if(!plValues) + alSetError(pContext, AL_INVALID_VALUE); + else if((ALBuf=LookupBuffer(device->BufferMap, buffer)) == NULL) + alSetError(pContext, AL_INVALID_NAME); + else { switch(eParam) { @@ -873,10 +875,6 @@ AL_API void AL_APIENTRY alBufferiv(ALuint buffer, ALenum eParam, const ALint* pl break; } } - else - { - alSetError(pContext, AL_INVALID_NAME); - } ProcessContext(pContext); } |