Mercurial > hg > openttd
changeset 18449:83bd67203321 draft
(svn r23293) -Codechange: make LoadScript/LoadFile non-static
author | truebrain <truebrain@openttd.org> |
---|---|
date | Wed, 23 Nov 2011 13:37:48 +0000 |
parents | 9f41304e661d |
children | 0fb6b658b347 |
files | src/ai/ai_scanner.cpp src/script/squirrel.cpp src/script/squirrel.hpp src/script/squirrel_std.cpp |
diffstat | 4 files changed, 7 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ai/ai_scanner.cpp +++ b/src/ai/ai_scanner.cpp @@ -134,7 +134,7 @@ sq_pushstring(vm, OTTD2SQ(fake_class), -1); sq_newclass(vm, SQFalse); /* Load the library */ - if (!Squirrel::LoadScript(vm, (*iter).second->GetMainScript(), false)) { + if (!this->engine->LoadScript(vm, (*iter).second->GetMainScript(), false)) { char error[1024]; snprintf(error, sizeof(error), "there was a compile error when importing '%s' version %d", library, version); sq_throwerror(vm, OTTD2SQ(error));
--- a/src/script/squirrel.cpp +++ b/src/script/squirrel.cpp @@ -425,7 +425,7 @@ return ret; } -/* static */ SQRESULT Squirrel::LoadFile(HSQUIRRELVM vm, const char *filename, SQBool printerror) +SQRESULT Squirrel::LoadFile(HSQUIRRELVM vm, const char *filename, SQBool printerror) { size_t size; FILE *file = FioFOpenFile(filename, "rb", AI_DIR, &size); @@ -477,7 +477,7 @@ return sq_throwerror(vm, _SC("cannot open the file")); } -/* static */ bool Squirrel::LoadScript(HSQUIRRELVM vm, const char *script, bool in_root) +bool Squirrel::LoadScript(HSQUIRRELVM vm, const char *script, bool in_root) { /* Make sure we are always in the root-table */ if (in_root) sq_pushroottable(vm);
--- a/src/script/squirrel.hpp +++ b/src/script/squirrel.hpp @@ -69,12 +69,12 @@ * @return False if loading failed. */ bool LoadScript(const char *script); - static bool LoadScript(HSQUIRRELVM vm, const char *script, bool in_root = true); + bool LoadScript(HSQUIRRELVM vm, const char *script, bool in_root = true); /** * Load a file to a given VM. */ - static SQRESULT LoadFile(HSQUIRRELVM vm, const char *filename, SQBool printerror); + SQRESULT LoadFile(HSQUIRRELVM vm, const char *filename, SQBool printerror); /** * Adds a function to the stack. Depending on the current state this means
--- a/src/script/squirrel_std.cpp +++ b/src/script/squirrel_std.cpp @@ -71,7 +71,8 @@ for (char *n = filen; *n != '\0'; n++) if (*n == '/') *n = PATHSEPCHAR; #endif - bool ret = Squirrel::LoadScript(vm, filen); + Squirrel *engine = (Squirrel *)sq_getforeignptr(vm); + bool ret = engine->LoadScript(vm, filen); /* Reset the top, so the stack stays correct */ sq_settop(vm, top);