[Scummvm-cvs-logs] SF.net SVN: scummvm:[40780] scummvm/trunk/engines/kyra/staticres.cpp

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Fri May 22 02:37:41 CEST 2009


Revision: 40780
          http://scummvm.svn.sourceforge.net/scummvm/?rev=40780&view=rev
Author:   lordhoto
Date:     2009-05-22 00:37:41 +0000 (Fri, 22 May 2009)

Log Message:
-----------
Fix crash when playing LoL demo.

Modified Paths:
--------------
    scummvm/trunk/engines/kyra/staticres.cpp

Modified: scummvm/trunk/engines/kyra/staticres.cpp
===================================================================
--- scummvm/trunk/engines/kyra/staticres.cpp	2009-05-22 00:21:14 UTC (rev 40779)
+++ scummvm/trunk/engines/kyra/staticres.cpp	2009-05-22 00:37:41 UTC (rev 40780)
@@ -1761,6 +1761,35 @@
 #ifdef ENABLE_LOL
 // TODO: move this to lol.cpp maybe?
 void LoLEngine::initStaticResource() {
+	// assign music data
+	static const char *pcMusicFileListIntro[] = { "LOREINTR" };
+	static const char *pcMusicFileListFinale[] = { "LOREFINL" };
+	static const char *pcMusicFileListIngame[] = { "LORE%02d%c" };
+
+	static const char *pc98MusicFileListIntro[] = { 0, "lore84.86", "lore82.86", 0, 0, 0, "lore83.86", "lore81.86" };
+	static const char *pc98MusicFileListFinale[] = { "lore%02d.86" };
+	static const char *pc98MusicFileListIngame[] = { "lore%02d.86" };
+
+	memset(_soundData, 0, sizeof(_soundData));
+	if (_flags.platform == Common::kPlatformPC) {
+		_soundData[0].fileList = pcMusicFileListIntro;
+		_soundData[0].fileListLen = ARRAYSIZE(pcMusicFileListIntro);
+		_soundData[1].fileList = pcMusicFileListIngame;
+		_soundData[1].fileListLen = ARRAYSIZE(pcMusicFileListIngame);
+		_soundData[2].fileList = pcMusicFileListFinale;
+		_soundData[2].fileListLen = ARRAYSIZE(pcMusicFileListFinale);
+	} else if (_flags.platform == Common::kPlatformPC98) {
+		_soundData[0].fileList = pc98MusicFileListIntro;
+		_soundData[0].fileListLen = ARRAYSIZE(pc98MusicFileListIntro);
+		_soundData[1].fileList = pc98MusicFileListIngame;
+		_soundData[1].fileListLen = ARRAYSIZE(pc98MusicFileListIngame);
+		_soundData[2].fileList = pc98MusicFileListFinale;
+		_soundData[2].fileListLen = ARRAYSIZE(pc98MusicFileListFinale);
+	}
+
+	if (_flags.isDemo)
+		return;
+
 	_charDefaults = _staticres->loadCharData(kLolCharacterDefs, _charDefaultsSize);
 	_ingameSoundIndex = (const uint16 *)_staticres->loadRawData(kLolIngameSfxIndex, _ingameSoundIndexSize);
 	_musicTrackMap = _staticres->loadRawData(kLolMusicTrackMap, _musicTrackMapSize);
@@ -1869,32 +1898,6 @@
 	}
 	_staticres->unloadId(lolLightningDefs);	
 
-	// assign music data
-	static const char *pcMusicFileListIntro[] = { "LOREINTR" };
-	static const char *pcMusicFileListFinale[] = { "LOREFINL" };
-	static const char *pcMusicFileListIngame[] = { "LORE%02d%c" };
-
-	static const char *pc98MusicFileListIntro[] = { 0, "lore84.86", "lore82.86", 0, 0, 0, "lore83.86", "lore81.86" };
-	static const char *pc98MusicFileListFinale[] = { "lore%02d.86" };
-	static const char *pc98MusicFileListIngame[] = { "lore%02d.86" };
-
-	memset(_soundData, 0, sizeof(_soundData));
-	if (_flags.platform == Common::kPlatformPC) {
-		_soundData[0].fileList = pcMusicFileListIntro;
-		_soundData[0].fileListLen = ARRAYSIZE(pcMusicFileListIntro);
-		_soundData[1].fileList = pcMusicFileListIngame;
-		_soundData[1].fileListLen = ARRAYSIZE(pcMusicFileListIngame);
-		_soundData[2].fileList = pcMusicFileListFinale;
-		_soundData[2].fileListLen = ARRAYSIZE(pcMusicFileListFinale);
-	} else if (_flags.platform == Common::kPlatformPC98) {
-		_soundData[0].fileList = pc98MusicFileListIntro;
-		_soundData[0].fileListLen = ARRAYSIZE(pc98MusicFileListIntro);
-		_soundData[1].fileList = pc98MusicFileListIngame;
-		_soundData[1].fileListLen = ARRAYSIZE(pc98MusicFileListIngame);
-		_soundData[2].fileList = pc98MusicFileListFinale;
-		_soundData[2].fileListLen = ARRAYSIZE(pc98MusicFileListFinale);
-	}
-
 	_buttonCallbacks.clear();
 #define cb(x) _buttonCallbacks.push_back(BUTTON_FUNCTOR(LoLEngine, this, &LoLEngine::x))
 	// 0x00


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