KYRA: (AdLib Driver) - fix queue handling for Eob

Huge numbers of sound effects get started as soon as a couple of monsters are around. If we start dropping sound when the queue is full, we won't have any sounds in these situations, but we'll get tons of useless warnings instead.
This commit is contained in:
athrxx 2011-11-06 22:19:26 +01:00 committed by Johannes Schickel
parent 2bcae2451a
commit 814c78e84e

View File

@ -545,7 +545,9 @@ void AdLibDriver::queueTrack(int track, int volume) {
if (!trackData)
return;
if (_programQueueEnd == _programQueueStart && _programQueue[_programQueueEnd].data != 0) {
// Don't drop tracks in Eob. The queue is always full there if a couple of monsters are around.
// If we drop the incoming tracks we get no sound effects, but tons of warnings instead.
if (_version >= 3 && _programQueueEnd == _programQueueStart && _programQueue[_programQueueEnd].data != 0) {
warning("AdLibDriver: Program queue full, dropping track %d", track);
return;
}