[Scummvm-git-logs] scummvm master -> 3519516f3306f10a74ffb8e92307e7fa6f72df5b

eriktorbjorn noreply at scummvm.org
Tue Apr 12 09:07:24 UTC 2022


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
3519516f33 SCUMM: Reset _autoLoop when loading new music (bug #13392)


Commit: 3519516f3306f10a74ffb8e92307e7fa6f72df5b
    https://github.com/scummvm/scummvm/commit/3519516f3306f10a74ffb8e92307e7fa6f72df5b
Author: Torbjörn Andersson (eriktorbjorn at users.sourceforge.net)
Date: 2022-04-12T11:03:14+02:00

Commit Message:
SCUMM: Reset _autoLoop when loading new music (bug #13392)

Any track that wants to loop should set the _autoLoop flag itself.
Otherwise, as soon as one track has looped every subsequent track
handled by the same instance of the parser will also loop. This flag is
(at least in the VGA floppy version of MI1) always set at the end of the
track, if it's set at all. So if you allowed the lookout music to loop,
the game would then get stuck on the chapter screen since the script was
waiting for the music to end.

As far as I'm aware, this MIDI parser is only used by MI1 (dwa has
confirmed that the EGA version had the same bug) and Loom (which, to the
best of my knowledge, never loops music).

Changed paths:
    engines/scumm/midiparser_ro.cpp


diff --git a/engines/scumm/midiparser_ro.cpp b/engines/scumm/midiparser_ro.cpp
index bfc748f984b..2b8452f03f3 100644
--- a/engines/scumm/midiparser_ro.cpp
+++ b/engines/scumm/midiparser_ro.cpp
@@ -134,6 +134,7 @@ bool MidiParser_RO::loadMusic (byte *data, uint32 size) {
 	}
 
 	_numTracks = 1;
+	_autoLoop = false;
 	_ppqn = 120;
 	_tracks[0] = pos + 2;
 	_markerCount = _lastMarkerCount = 0;




More information about the Scummvm-git-logs mailing list