[Scummvm-cvs-logs] scummvm master -> 1bd83a96f00c4d25cf4060ba8faffda81865ad7d

bluegr bluegr at gmail.com
Fri Jan 23 02:03:29 CET 2015


This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
f7e0d1e958 ZVISION: Fix shadowed variable
1bd83a96f0 ZVISION: Fix script bug #6780 (invalid hotspot at base of tower in ZGI)


Commit: f7e0d1e958f3b6a4bfff9ba2c9ade03375e8f9d9
    https://github.com/scummvm/scummvm/commit/f7e0d1e958f3b6a4bfff9ba2c9ade03375e8f9d9
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2015-01-23T03:01:29+02:00

Commit Message:
ZVISION: Fix shadowed variable

A bug in commit 21e9007d80. Thanks to fingolfin for pointing it out

Changed paths:
    engines/zvision/file/save_manager.cpp



diff --git a/engines/zvision/file/save_manager.cpp b/engines/zvision/file/save_manager.cpp
index 55be8d2..1e0c57e 100644
--- a/engines/zvision/file/save_manager.cpp
+++ b/engines/zvision/file/save_manager.cpp
@@ -136,13 +136,15 @@ Common::Error SaveManager::loadGame(int slot) {
 	if (slot >= 0) {
 		saveFile = getSlotFile(slot);
 	} else {
-		Common::File *saveFile = _engine->getSearchManager()->openFile("r.svr");
+		saveFile = _engine->getSearchManager()->openFile("r.svr");
 		if (!saveFile) {
-			saveFile = new Common::File;
-			if (!saveFile->open("r.svr")) {
-				delete saveFile;
+			Common::File *restoreFile = new Common::File();
+			if (!restoreFile->open("r.svr")) {
+				delete restoreFile;
 				return Common::kPathDoesNotExist;
 			}
+
+			saveFile = restoreFile;
 		}
 	}
 


Commit: 1bd83a96f00c4d25cf4060ba8faffda81865ad7d
    https://github.com/scummvm/scummvm/commit/1bd83a96f00c4d25cf4060ba8faffda81865ad7d
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2015-01-23T03:02:24+02:00

Commit Message:
ZVISION: Fix script bug #6780 (invalid hotspot at base of tower in ZGI)

Changed paths:
    engines/zvision/scripting/scr_file_handling.cpp



diff --git a/engines/zvision/scripting/scr_file_handling.cpp b/engines/zvision/scripting/scr_file_handling.cpp
index 8f0f80e..b9cafa7 100644
--- a/engines/zvision/scripting/scr_file_handling.cpp
+++ b/engines/zvision/scripting/scr_file_handling.cpp
@@ -358,6 +358,16 @@ Control *ScriptManager::parseControl(Common::String &line, Common::SeekableReadS
 	Common::String controlType(controlTypeBuffer);
 
 	if (controlType.equalsIgnoreCase("push_toggle")) {
+		// WORKAROUND for a script bug in ZGI: There is an invalid hotspot
+		// at scene em1h (bottom of tower), which points to a missing
+		// script em1n. This is a hotspot at the right of the screen.
+		// In the original, this hotspot doesn't lead anywhere anyway,
+		// so instead of moving to a missing scene, we just remove the
+		// hotspot altogether. The alternative would be to just process
+		// and ignore invalid scenes, but I don't think it's worth the
+		// effort. Fixes bug #6780.
+		if (_engine->getGameId() == GID_GRANDINQUISITOR && key == 5653)
+			return NULL;
 		return new PushToggleControl(_engine, key, stream);
 	} else if (controlType.equalsIgnoreCase("flat")) {
 		Control::parseFlatControl(_engine);






More information about the Scummvm-git-logs mailing list