diff options
| author | Jamieson Christian | 2003-07-15 10:16:45 +0000 | 
|---|---|---|
| committer | Jamieson Christian | 2003-07-15 10:16:45 +0000 | 
| commit | 44bda652ee70941c7a6c2bbe6980808f20b74bb0 (patch) | |
| tree | cbecaa8f561e63cf632ecb4689d3787b52a3c66f | |
| parent | c2dd5afb6abc308c0bf76d201c4014de0139faaf (diff) | |
| download | scummvm-rg350-44bda652ee70941c7a6c2bbe6980808f20b74bb0.tar.gz scummvm-rg350-44bda652ee70941c7a6c2bbe6980808f20b74bb0.tar.bz2 scummvm-rg350-44bda652ee70941c7a6c2bbe6980808f20b74bb0.zip  | |
Fix for Bug [766851] ALL: MIDI fragment repeats after close ups
Adjusted default _saveSound value used by S&M (whose
value is assumed by pre-S&M games). Corrected save/load
music behavior for non-temporary saves. (Until this default
value change, the incorrect behavior would almost never
manifest itself, so existing savegames should be fine.)
svn-id: r9035
| -rw-r--r-- | scumm/saveload.cpp | 6 | ||||
| -rw-r--r-- | scumm/scummvm.cpp | 2 | 
2 files changed, 4 insertions, 4 deletions
diff --git a/scumm/saveload.cpp b/scumm/saveload.cpp index 02b8c36dad..004d1e38b3 100644 --- a/scumm/saveload.cpp +++ b/scumm/saveload.cpp @@ -130,7 +130,7 @@ bool Scumm::loadState(int slot, bool compat, SaveFileManager *mgr) {  	/* Nuke all resources */  	for (i = rtFirst; i <= rtLast; i++) -		if (i != rtTemp && i != rtBuffer && (i != rtSound || _saveSound)) +		if (i != rtTemp && i != rtBuffer && (i != rtSound || _saveSound || !compat))  			for (j = 0; j < res.num[i]; j++) {  				nukeResource(i, j);  				res.flags[i][j] = 0; @@ -551,7 +551,7 @@ void Scumm::saveOrLoad(Serializer *s, uint32 savegameVersion) {  	int var120Backup;  	int var98Backup; -	if (!s->isSaving() && _saveSound) { +	if (!s->isSaving() && (_saveSound || !_saveLoadCompatible)) {  		_sound->stopAllSounds();  		if (_mixer) {  			if (_imuseDigital) { @@ -668,7 +668,7 @@ void Scumm::saveOrLoad(Serializer *s, uint32 savegameVersion) {  		}  	} -	if (_imuse && _saveSound) { +	if (_imuse && (_saveSound || !_saveLoadCompatible)) {  		_imuse->save_or_load(s, this);  		_imuse->set_master_volume (_sound->_sound_volume_master);  		_imuse->set_music_volume (_sound->_sound_volume_music); diff --git a/scumm/scummvm.cpp b/scumm/scummvm.cpp index 99158481d6..23c15d1c2b 100644 --- a/scumm/scummvm.cpp +++ b/scumm/scummvm.cpp @@ -393,7 +393,7 @@ Scumm::Scumm (GameDetector *detector, OSystem *syst)  	tempMusic = 0;  	_silentDigitalImuse = 0;  	_noDigitalSamples = 0; -	_saveSound = 1; +	_saveSound = 0;  	memset(_extraBoxFlags, 0, sizeof(_extraBoxFlags));  	memset(_scaleSlots, 0, sizeof(_scaleSlots));  	_charset = NULL;  | 
