aboutsummaryrefslogtreecommitdiff
path: root/engines/access/sound.cpp
diff options
context:
space:
mode:
authorStrangerke2014-12-09 00:35:02 +0100
committerPaul Gilbert2014-12-12 23:03:59 -0500
commit35922c28c8579c9f2fe476a351da74a92b7660d5 (patch)
tree45a515b94068f5fdb0ac9e81edfff719d283b9a8 /engines/access/sound.cpp
parent9ef60f3f3357491e39dfe3c16470fa3711e8a211 (diff)
downloadscummvm-rg350-35922c28c8579c9f2fe476a351da74a92b7660d5.tar.gz
scummvm-rg350-35922c28c8579c9f2fe476a351da74a92b7660d5.tar.bz2
scummvm-rg350-35922c28c8579c9f2fe476a351da74a92b7660d5.zip
ACCESS: Add a hack to fake queueing
Diffstat (limited to 'engines/access/sound.cpp')
-rw-r--r--engines/access/sound.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/engines/access/sound.cpp b/engines/access/sound.cpp
index b5800ba82f..4e701618d9 100644
--- a/engines/access/sound.cpp
+++ b/engines/access/sound.cpp
@@ -82,6 +82,10 @@ void SoundManager::playSound(Resource *res, int priority) {
assert(res->_size >= 32);
+ // HACK: Simulates queueing for the rare sounds played one after the other
+ while (_mixer->hasActiveChannelOfType(Audio::Mixer::kSFXSoundType))
+ ;
+
if (READ_BE_UINT32(resourceData) == MKTAG('R','I','F','F')) {
// CD version uses WAVE-files
Common::SeekableReadStream *waveStream = new Common::MemoryReadStream(resourceData, res->_size, DisposeAfterUse::NO);