From 4ea3e511bd71559ab475f49292c8b50f1eace647 Mon Sep 17 00:00:00 2001 From: yexo Date: Mon, 1 Jun 2009 22:00:47 +0000 Subject: (svn r16502) -Fix [FS#2935]: when an AI was suspended while in a function called (indirectly) via call/acall/pcall OpenTTD crashed. Fix this by disallowing AIs to be suspended while called via call/acall/pcall. IMPORTANT FOR AI WRITERS: AIs can no longer call any DoCommand functions (change anything, build vehicles, etc.) in a function called (indirectly) via call/acall/pcall. Where possible, please rewrite your code so it doesn't use call/acall/pcall --- src/3rdparty/squirrel/include/squirrel.h | 1 + 1 file changed, 1 insertion(+) (limited to 'src/3rdparty/squirrel/include') diff --git a/src/3rdparty/squirrel/include/squirrel.h b/src/3rdparty/squirrel/include/squirrel.h index e611d0853..5623760fa 100644 --- a/src/3rdparty/squirrel/include/squirrel.h +++ b/src/3rdparty/squirrel/include/squirrel.h @@ -275,6 +275,7 @@ typedef struct tagSQRegFunction{ }SQRegFunction; /*vm*/ +SQUIRREL_API bool sq_can_suspend(HSQUIRRELVM v); SQUIRREL_API HSQUIRRELVM sq_open(SQInteger initialstacksize); SQUIRREL_API HSQUIRRELVM sq_newthread(HSQUIRRELVM friendvm, SQInteger initialstacksize); SQUIRREL_API void sq_seterrorhandler(HSQUIRRELVM v); -- cgit v1.2.3-70-g09d2