[Scummvm-cvs-logs] SF.net SVN: scummvm:[53854] scummvm/trunk/engines/lastexpress/game/savegame .cpp
wjpalenstijn at users.sourceforge.net
wjpalenstijn at users.sourceforge.net
Tue Oct 26 22:14:17 CEST 2010
Revision: 53854
http://scummvm.svn.sourceforge.net/scummvm/?rev=53854&view=rev
Author: wjpalenstijn
Date: 2010-10-26 20:14:17 +0000 (Tue, 26 Oct 2010)
Log Message:
-----------
LASTEXPRESS: Read savegame in blocks instead of bytes
Modified Paths:
--------------
scummvm/trunk/engines/lastexpress/game/savegame.cpp
Modified: scummvm/trunk/engines/lastexpress/game/savegame.cpp
===================================================================
--- scummvm/trunk/engines/lastexpress/game/savegame.cpp 2010-10-26 16:21:00 UTC (rev 53853)
+++ scummvm/trunk/engines/lastexpress/game/savegame.cpp 2010-10-26 20:14:17 UTC (rev 53854)
@@ -107,8 +107,17 @@
error("SaveLoad::init - Savegame seems to be corrupted (not enough data: %i bytes)", save->size());
// Load all savegame data
- while (!save->eos() && !save->err())
- _savegame->writeByte(save->readByte());
+ uint8* buf = new uint8[4096];
+ while (!save->eos() && !save->err()) {
+ uint32 count = save->read(buf, sizeof(buf));
+ if (count) {
+ uint32 w = _savegame->write(buf, count);
+ assert (w == count);
+ }
+ }
+ if (save->err())
+ error("SaveLoad::init - Error reading savegame");
+ delete[] buf;
_savegame->seek(0);
SAFE_DELETE(save);
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