[Scummvm-cvs-logs] scummvm master -> de230b7696318ea8fb2af593223342a2a619a565

bluegr bluegr at gmail.com
Wed May 15 20:49:44 CEST 2013


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:
de230b7696 MADE: Show version-related before size-related incompatibilities in savegames


Commit: de230b7696318ea8fb2af593223342a2a619a565
    https://github.com/scummvm/scummvm/commit/de230b7696318ea8fb2af593223342a2a619a565
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2013-05-15T11:48:32-07:00

Commit Message:
MADE: Show version-related before size-related incompatibilities in savegames

This gives clearer errors when users use savegames saved with a different version

Changed paths:
    engines/made/database.cpp



diff --git a/engines/made/database.cpp b/engines/made/database.cpp
index bf47164..7c8f9bd 100644
--- a/engines/made/database.cpp
+++ b/engines/made/database.cpp
@@ -665,15 +665,16 @@ bool GameDatabaseV3::getSavegameDescription(const char *filename, Common::String
 	}
 
 	int32 size = in->readUint32LE();
-	if (size != in->size() - 64) {
-		warning("Unexpected save game size. Expected %d, size is %d (file size - 64)", size, in->size() - 64);
+	int16 saveVersion = in->readUint16LE();
+
+	if (saveVersion != version) {
+		warning("Save game %s was saved with a different version of the game. Game version is %d, save version is %d", filename, version, saveVersion);
 		delete in;
 		return false;
 	}
 
-	int16 saveVersion = in->readUint16LE();
-	if (saveVersion != version) {
-		warning("Save game %s was saved with a different version of the game. Game version is %d, save version is %d", filename, version, saveVersion);
+	if (size != in->size() - 64) {
+		warning("Unexpected save game size. Expected %d, size is %d (file size - 64)", size, in->size() - 64);
 		delete in;
 		return false;
 	}
@@ -722,15 +723,16 @@ int16 GameDatabaseV3::loadgame(const char *filename, int16 version) {
 	}
 
 	uint32 size = in->readUint32LE();
-	if (size != expectedSize) {
-		warning("Unexpected save game size. Expected %d, size is %d", expectedSize, size);
+	int16 saveVersion = in->readUint16LE();
+
+	if (saveVersion != version) {
+		warning("Save game %s was saved with a different version of the game. Game version is %d, save version is %d", filename, version, saveVersion);
 		delete in;
 		return 1;
 	}
 
-	int16 saveVersion = in->readUint16LE();
-	if (saveVersion != version) {
-		warning("Save game %s was saved with a different version of the game. Game version is %d, save version is %d", filename, version, saveVersion);
+	if (size != expectedSize) {
+		warning("Unexpected save game size. Expected %d, size is %d", expectedSize, size);
 		delete in;
 		return 1;
 	}






More information about the Scummvm-git-logs mailing list