[Scummvm-cvs-logs] scummvm master -> 68b4873559f31bae2971c3d31c6fac7f1b1f4e1d

lordhoto lordhoto at gmail.com
Sat Aug 6 03:52:53 CEST 2011


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:
68b4873559 SCUMM: Properly reset midi channel voice mapping in CMS on new track.


Commit: 68b4873559f31bae2971c3d31c6fac7f1b1f4e1d
    https://github.com/scummvm/scummvm/commit/68b4873559f31bae2971c3d31c6fac7f1b1f4e1d
Author: Johannes Schickel (lordhoto at scummvm.org)
Date: 2011-08-05T18:45:40-07:00

Commit Message:
SCUMM: Properly reset midi channel voice mapping in CMS on new track.

This fixes an ugly dead lock in some cases.

Changed paths:
    engines/scumm/player_v2cms.cpp



diff --git a/engines/scumm/player_v2cms.cpp b/engines/scumm/player_v2cms.cpp
index 9908ba5..c31998e 100644
--- a/engines/scumm/player_v2cms.cpp
+++ b/engines/scumm/player_v2cms.cpp
@@ -291,7 +291,8 @@ void Player_V2CMS::startSound(int nr) {
 }
 
 void Player_V2CMS::loadMidiData(byte *data, int sound) {
-	memset(_midiChannelUse, 0, sizeof(byte)*16);
+	memset(_midiChannelUse, 0, sizeof(_midiChannelUse));
+	memset(_midiChannel, 0, sizeof(_midiChannel));
 
 	_tempo = data[7];
 	_looping = data[8];
@@ -340,12 +341,10 @@ void Player_V2CMS::loadMidiData(byte *data, int sound) {
 		}
 	}
 
-	for (int i = 0, channel = 0; i < 8; ++i, channel += 2) {
+	for (int i = 0; i < 8; ++i) {
 		_cmsVoices[i].chanNumber = 0xFF;
 		_cmsVoices[i].curVolume = 0;
 		_cmsVoices[i].nextVoice = 0;
-
-		_midiChannel[channel] = 0;
 	}
 
 	_midiDelay = 0;






More information about the Scummvm-git-logs mailing list