[Scummvm-cvs-logs] SF.net SVN: scummvm:[55541] scummvm/trunk/engines/lastexpress/game
littleboy at users.sourceforge.net
littleboy at users.sourceforge.net
Wed Jan 26 11:43:39 CET 2011
Revision: 55541
http://scummvm.svn.sourceforge.net/scummvm/?rev=55541&view=rev
Author: littleboy
Date: 2011-01-26 10:43:38 +0000 (Wed, 26 Jan 2011)
Log Message:
-----------
LASTEXPRESS: Add some more error handling to Savegame and Sound classes
- Add some const modifiers where applicable
- Add some missing casts
Modified Paths:
--------------
scummvm/trunk/engines/lastexpress/game/menu.cpp
scummvm/trunk/engines/lastexpress/game/savegame.cpp
scummvm/trunk/engines/lastexpress/game/sound.cpp
scummvm/trunk/engines/lastexpress/game/sound.h
Modified: scummvm/trunk/engines/lastexpress/game/menu.cpp
===================================================================
--- scummvm/trunk/engines/lastexpress/game/menu.cpp 2011-01-26 00:21:54 UTC (rev 55540)
+++ scummvm/trunk/engines/lastexpress/game/menu.cpp 2011-01-26 10:43:38 UTC (rev 55541)
@@ -180,7 +180,7 @@
//////////////////////////////////////////////////////////////////////////
class Clock {
public:
- Clock(LastExpressEngine *engine);
+ explicit Clock(LastExpressEngine *engine);
~Clock();
void draw(uint32 time);
@@ -271,7 +271,7 @@
//////////////////////////////////////////////////////////////////////////
class TrainLine {
public:
- TrainLine(LastExpressEngine *engine);
+ explicit TrainLine(LastExpressEngine *engine);
~TrainLine();
void draw(uint32 time);
@@ -1454,13 +1454,13 @@
if (_currentTime < _time) {
timeDelta *= 900;
- _time -= timeDelta.toInt();
+ _time -= (uint)timeDelta.toInt();
if (_currentTime > _time)
_time = _currentTime;
} else {
timeDelta *= 900;
- _time += timeDelta.toInt();
+ _time += (uint)timeDelta.toInt();
if (_currentTime < _time)
_time = _currentTime;
Modified: scummvm/trunk/engines/lastexpress/game/savegame.cpp
===================================================================
--- scummvm/trunk/engines/lastexpress/game/savegame.cpp 2011-01-26 00:21:54 UTC (rev 55540)
+++ scummvm/trunk/engines/lastexpress/game/savegame.cpp 2011-01-26 10:43:38 UTC (rev 55541)
@@ -63,7 +63,7 @@
SaveLoad::~SaveLoad() {
clear(true);
- //Zero passed pointers
+ // Zero passed pointers
_engine = NULL;
}
@@ -191,6 +191,9 @@
// Load game
void SaveLoad::loadGame(GameId id) {
+ if (!_savegame)
+ error("SaveLoad::loadGame: No savegame stream present!");
+
// Rewind current savegame
_savegame->seek(0);
@@ -201,6 +204,9 @@
return;
}
+ if (!_savegame)
+ error("SaveLoad::loadGame: No savegame stream present!");
+
// Load the last entry
_savegame->seek(header.offsetEntry);
@@ -419,6 +425,9 @@
if (!type || !entity || !val)
error("SaveLoad::readEntry: Invalid parameters passed!");
+ if (!_savegame)
+ error("SaveLoad::readEntry: No savegame stream present!");
+
// Load entry header
SavegameEntryHeader entry;
Common::Serializer ser(_savegame, NULL);
@@ -452,7 +461,7 @@
getProgress().chapter = entry.chapter;
// Skip padding
- uint32 offset = _savegame->pos() - originalPosition;
+ uint32 offset = (uint32)_savegame->pos() - originalPosition;
if (offset & 0xF) {
_savegame->seek((~offset & 0xF) + 1, SEEK_SET);
}
Modified: scummvm/trunk/engines/lastexpress/game/sound.cpp
===================================================================
--- scummvm/trunk/engines/lastexpress/game/sound.cpp 2011-01-26 00:21:54 UTC (rev 55540)
+++ scummvm/trunk/engines/lastexpress/game/sound.cpp 2011-01-26 10:43:38 UTC (rev 55541)
@@ -359,7 +359,7 @@
}
}
-void SoundManager::resetEntry(SoundEntry *entry) {
+void SoundManager::resetEntry(SoundEntry *entry) const {
entry->status.status |= kSoundStatusRemoved;
entry->entity = kEntityPlayer;
@@ -1763,7 +1763,7 @@
if (!(status & kSoundStatus_40)
|| status & 0x180
- || soundEntry->time <= 0
+ || soundEntry->time == 0
|| (status & 0x1F) < 6
|| ((getFlags()->nis & 0x8000) && soundEntry->field_4C < 90)) {
current_index = 0;
@@ -1845,7 +1845,7 @@
if (subtitle->data->getMaxTime() > subtitle->sound->time) {
subtitle->status.status = kSoundStatus_400;
} else {
- subtitle->data->setTime(subtitle->sound->time);
+ subtitle->data->setTime((uint16)subtitle->sound->time);
if (_drawSubtitles & 1)
drawSubtitleOnScreen(subtitle);
@@ -1867,6 +1867,9 @@
}
void SoundManager::drawSubtitleOnScreen(SubtitleEntry *subtitle) {
+ if (!subtitle)
+ error("SoundManager::drawSubtitleOnScreen: Invalid subtitle entry!");
+
_drawSubtitles &= ~1;
if (subtitle->data == NULL)
Modified: scummvm/trunk/engines/lastexpress/game/sound.h
===================================================================
--- scummvm/trunk/engines/lastexpress/game/sound.h 2011-01-26 00:21:54 UTC (rev 55540)
+++ scummvm/trunk/engines/lastexpress/game/sound.h 2011-01-26 10:43:38 UTC (rev 55541)
@@ -361,7 +361,7 @@
void updateEntry(SoundEntry *entry, uint value) const;
void updateEntryState(SoundEntry *entry) const ;
- void resetEntry(SoundEntry *entry);
+ void resetEntry(SoundEntry *entry) const;
void removeEntry(SoundEntry *entry);
// Subtitles
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