[Scummvm-cvs-logs] CVS: scummvm/sword2 save_rest.cpp,1.54,1.55

Torbjörn Andersson eriktorbjorn at users.sourceforge.net
Wed Jun 9 23:15:02 CEST 2004


Update of /cvsroot/scummvm/scummvm/sword2
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30302

Modified Files:
	save_rest.cpp 
Log Message:
One of my not-so-recent cleanups caused BS2 to produce corrupt savegames.
And no one even noticed! Should be fixed now.


Index: save_rest.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sword2/save_rest.cpp,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -d -r1.54 -r1.55
--- save_rest.cpp	26 Apr 2004 07:37:25 -0000	1.54
+++ save_rest.cpp	10 Jun 2004 06:14:07 -0000	1.55
@@ -131,6 +131,9 @@
 	convertHeaderEndian(_saveGameHeader);
 #endif
 
+	// Copy the header to the buffer, even though it isn't quite complete
+	memcpy(buffer, &_saveGameHeader, sizeof(_saveGameHeader));
+
 	// Get the global variables
 
 	byte *varsRes = _resman->openResource(1);
@@ -150,10 +153,9 @@
 
 	_saveGameHeader.checksum = TO_LE_32(calcChecksum(buffer + sizeof(_saveGameHeader.checksum), size - sizeof(_saveGameHeader.checksum)));
 
-
 	// All done
 
-	memcpy(buffer, &_saveGameHeader, sizeof(_saveGameHeader));
+	memcpy(buffer, &_saveGameHeader.checksum, sizeof(_saveGameHeader.checksum));
 }
 
 uint32 Sword2Engine::saveData(uint16 slotNo, byte *buffer, uint32 bufferSize) {





More information about the Scummvm-git-logs mailing list