aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage/sound.h
diff options
context:
space:
mode:
authorColin Snover2017-11-20 15:32:32 -0600
committerColin Snover2017-11-20 18:43:18 -0600
commitfe45300891fea90f7ad72d66af7f060c3ec6b753 (patch)
treedd79aa05c92acc7303483c248a76538c5408e4f9 /engines/tsage/sound.h
parent7fc9e381b8069335ec85de481fa843d57f951218 (diff)
downloadscummvm-rg350-fe45300891fea90f7ad72d66af7f060c3ec6b753.tar.gz
scummvm-rg350-fe45300891fea90f7ad72d66af7f060c3ec6b753.tar.bz2
scummvm-rg350-fe45300891fea90f7ad72d66af7f060c3ec6b753.zip
TSAGE: Fix deadlocks in audio code
Fixes Trac#6618, Trac#6638, Trac#7011.
Diffstat (limited to 'engines/tsage/sound.h')
-rw-r--r--engines/tsage/sound.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/engines/tsage/sound.h b/engines/tsage/sound.h
index 8215d6ee6e..6d6b480d58 100644
--- a/engines/tsage/sound.h
+++ b/engines/tsage/sound.h
@@ -251,7 +251,7 @@ public:
static void sfDoAddToPlayList(Sound *sound);
static bool sfDoRemoveFromPlayList(Sound *sound);
static void sfDoUpdateVolume(Sound *sound);
- static void sfSoundServer();
+ static void sfSoundServer(void *);
static void sfProcessFading();
static void sfUpdateVoiceStructs();
static void sfUpdateVoiceStructs2();
@@ -458,6 +458,7 @@ private:
byte _portContents[256];
const byte *_patchData;
int _masterVolume;
+ Common::Mutex _queueMutex;
Common::Queue<RegisterValue> _queue;
bool _channelVoiced[ADLIB_CHANNEL_COUNT];