[Scummvm-cvs-logs] SF.net SVN: scummvm:[49261] scummvm/trunk/engines/sci/sound
m_kiewitz at users.sourceforge.net
m_kiewitz at users.sourceforge.net
Thu May 27 13:26:38 CEST 2010
Revision: 49261
http://scummvm.svn.sourceforge.net/scummvm/?rev=49261&view=rev
Author: m_kiewitz
Date: 2010-05-27 11:26:37 +0000 (Thu, 27 May 2010)
Log Message:
-----------
SCI: fixing resuming samples - fixes hang when ship is flying away happening when you entered menu during that sequence
Modified Paths:
--------------
scummvm/trunk/engines/sci/sound/music.cpp
scummvm/trunk/engines/sci/sound/soundcmd.cpp
Modified: scummvm/trunk/engines/sci/sound/music.cpp
===================================================================
--- scummvm/trunk/engines/sci/sound/music.cpp 2010-05-27 08:09:32 UTC (rev 49260)
+++ scummvm/trunk/engines/sci/sound/music.cpp 2010-05-27 11:26:37 UTC (rev 49261)
@@ -387,7 +387,12 @@
return;
if (pSnd->status != kSoundPaused)
return;
- soundPlay(pSnd);
+ if (pSnd->pStreamAud) {
+ _pMixer->pauseHandle(pSnd->hCurrentAud, false);
+ pSnd->status = kSoundPlaying;
+ } else {
+ soundPlay(pSnd);
+ }
}
void SciMusic::soundToggle(MusicEntry *pSnd, bool pause) {
Modified: scummvm/trunk/engines/sci/sound/soundcmd.cpp
===================================================================
--- scummvm/trunk/engines/sci/sound/soundcmd.cpp 2010-05-27 08:09:32 UTC (rev 49260)
+++ scummvm/trunk/engines/sci/sound/soundcmd.cpp 2010-05-27 11:26:37 UTC (rev 49261)
@@ -828,7 +828,7 @@
musicSlot->loop -= currentLoopCounter - musicSlot->sampleLoopCounter;
musicSlot->sampleLoopCounter = currentLoopCounter;
}
- if (!_music->soundIsActive(musicSlot)) {
+ if ((!_music->soundIsActive(musicSlot)) && (musicSlot->status != kSoundPaused)) {
processStopSound(obj, 0, true);
} else {
_music->updateAudioStreamTicker(musicSlot);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list