[Scummvm-git-logs] scummvm master -> 2c997d175cbc1b9a6ff0c5a1bb58bb4bc7776c00

aquadran noreply at scummvm.org
Tue Jan 4 19:47:01 UTC 2022


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:
2c997d175c GRIM: Remove W/A, it's not reproducible. Based on bug report, game was in bad state, by direct script jump.


Commit: 2c997d175cbc1b9a6ff0c5a1bb58bb4bc7776c00
    https://github.com/scummvm/scummvm/commit/2c997d175cbc1b9a6ff0c5a1bb58bb4bc7776c00
Author: Paweł Kołodziejski (aquadran at gmail.com)
Date: 2022-01-04T20:46:53+01:00

Commit Message:
GRIM: Remove W/A, it's not reproducible. Based on bug report, game was in bad state, by direct script jump.

Changed paths:
    engines/grim/lua/ldo.cpp


diff --git a/engines/grim/lua/ldo.cpp b/engines/grim/lua/ldo.cpp
index bdc0f532959..8ce72f6de85 100644
--- a/engines/grim/lua/ldo.cpp
+++ b/engines/grim/lua/ldo.cpp
@@ -238,20 +238,8 @@ int32 luaD_call(StkId base, int32 nResults) {
 			firstResult = callC(fvalue(funcObj), base);
 		} else {
 			TObject *im = luaT_getimbyObj(funcObj, IM_FUNCTION);
-			if (ttype(im) == LUA_T_NIL) {
-				// NOTE: Originally this throwed the lua_error. Anyway it is commented here because
-				// when in year 4 bi.exit() calls bi.book.act:free(). But bi.book.act is nil,
-				// hence it enters this branch and the error blocks the game.
-				// Now we try instead to survive and go on with the function.
-				lua_Task *t = lua_state->task;
-				lua_state->task = t->next;
-				lua_state->some_task = tmpTask;
-				luaM_free(t);
-
-				warning("Lua: call expression not a function");
-				return 1;
-// 				lua_error("call expression not a function");
-			}
+			if (ttype(im) == LUA_T_NIL)
+				lua_error("call expression not a function");
 			luaD_callTM(im, (lua_state->stack.top - lua_state->stack.stack) - (base - 1), nResults);
 			continue;
 		}




More information about the Scummvm-git-logs mailing list