diff options
author | Chris Robinson <[email protected]> | 2011-01-23 15:04:42 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2011-01-23 15:04:42 -0800 |
commit | c95bd6cadf8f1b850a34e123eb4314dbe5993cbc (patch) | |
tree | 1d76d1859d80dec9bd789c03b2bbca03adbc0e5c /Alc | |
parent | d73694d3e61db2157f1934d6cc0add7ab34b8b03 (diff) |
Fix loop handling when traversing the buffer queue backwards
Diffstat (limited to 'Alc')
-rw-r--r-- | Alc/mixer.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Alc/mixer.c b/Alc/mixer.c index a6fe7522..af50c72e 100644 --- a/Alc/mixer.c +++ b/Alc/mixer.c @@ -659,13 +659,13 @@ ALvoid MixSource(ALsource *Source, ALCdevice *Device, ALuint SamplesToDo) break; } - if(Looping) + if(BufferListIter->prev) + BufferListIter = BufferListIter->prev; + else { while(BufferListIter->next) BufferListIter = BufferListIter->next; } - else - BufferListIter = BufferListIter->prev; if(BufferListIter->buffer) { |