[Scummvm-cvs-logs] SF.net SVN: scummvm:[51985] scummvm/trunk/engines/sci/sound/music.cpp
m_kiewitz at users.sourceforge.net
m_kiewitz at users.sourceforge.net
Wed Aug 11 17:04:26 CEST 2010
Revision: 51985
http://scummvm.svn.sourceforge.net/scummvm/?rev=51985&view=rev
Author: m_kiewitz
Date: 2010-08-11 15:04:26 +0000 (Wed, 11 Aug 2010)
Log Message:
-----------
SCI: not pausing kDoSound samples anymore
but pausing looped samples only
fixes "I'm melting" sample in sq1 death (bug #3038048)
added detailed comment about this change
Modified Paths:
--------------
scummvm/trunk/engines/sci/sound/music.cpp
Modified: scummvm/trunk/engines/sci/sound/music.cpp
===================================================================
--- scummvm/trunk/engines/sci/sound/music.cpp 2010-08-11 14:35:42 UTC (rev 51984)
+++ scummvm/trunk/engines/sci/sound/music.cpp 2010-08-11 15:04:26 UTC (rev 51985)
@@ -465,6 +465,17 @@
}
void SciMusic::soundPause(MusicEntry *pSnd) {
+ // SCI seems not to be pausing samples played back by kDoSound at all
+ // It only stops looping samples (actually doesn't loop them again before they are unpaused)
+ // Examples: Space Quest 1 death by acid drops (pause is called even specifically for the sample, see bug #3038048)
+ // Eco Quest 1 during the intro when going to the abort-menu
+ // In both cases sierra sci keeps playing
+ // Leisure Suit Larry 1 doll scene - it seems that pausing here actually just stops
+ // further looping from happening
+ // This is a somewhat bigger change, I'm leaving in the old code in here just in case
+ // I'm currently pausing looped sounds directly, non-looped sounds won't get paused
+ if ((pSnd->pStreamAud) && (!pSnd->pLoopStream))
+ return;
pSnd->pauseCounter++;
if (pSnd->status != kSoundPlaying)
return;
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