Don't defer stopped and initial source state changes
Typically when these are set, an app will be releasing the buffer from the source, possibly to immediately reuse it. There would be an extra burden placed on the app if it was required to process updates before it could fully release the buffer from the source.
This commit is contained in:
+4
-4
@@ -1481,8 +1481,8 @@ AL_API ALvoid AL_APIENTRY alSourceStopv(ALsizei n, const ALuint *sources)
|
||||
for(i = 0;i < n;i++)
|
||||
{
|
||||
Source = LookupSource(Context->SourceMap, sources[i]);
|
||||
if(Context->DeferUpdates) Source->new_state = AL_STOPPED;
|
||||
else SetSourceState(Source, Context, AL_STOPPED);
|
||||
Source->new_state = AL_NONE;
|
||||
SetSourceState(Source, Context, AL_STOPPED);
|
||||
}
|
||||
|
||||
done:
|
||||
@@ -1527,8 +1527,8 @@ AL_API ALvoid AL_APIENTRY alSourceRewindv(ALsizei n, const ALuint *sources)
|
||||
for(i = 0;i < n;i++)
|
||||
{
|
||||
Source = LookupSource(Context->SourceMap, sources[i]);
|
||||
if(Context->DeferUpdates) Source->new_state = AL_INITIAL;
|
||||
else SetSourceState(Source, Context, AL_INITIAL);
|
||||
Source->new_state = AL_NONE;
|
||||
SetSourceState(Source, Context, AL_INITIAL);
|
||||
}
|
||||
|
||||
done:
|
||||
|
||||
Reference in New Issue
Block a user