diff options
author | Thorbjørn Lindeijer <thorbjorn@lindeijer.nl> | 2010-08-22 13:32:24 +0200 |
---|---|---|
committer | Thorbjørn Lindeijer <thorbjorn@lindeijer.nl> | 2010-08-22 13:39:39 +0200 |
commit | 9ea18abb49a760fe1eda197c02cbdcd680b47204 (patch) | |
tree | f3b8a8a3e65dc313cc1a5503bc1ee473a199204d /src/scripting/luascript.cpp | |
parent | bfca89de4edded82668376d2388784defbee071b (diff) | |
download | manaserv-9ea18abb49a760fe1eda197c02cbdcd680b47204.tar.gz manaserv-9ea18abb49a760fe1eda197c02cbdcd680b47204.tar.xz manaserv-9ea18abb49a760fe1eda197c02cbdcd680b47204.zip |
Pass a script name to Lua for proper reporting of error locations
Now the Lua file name shows up in the error message and stack traceback,
or the map file and object name in case of a script embedded in a map
file.
Diffstat (limited to 'src/scripting/luascript.cpp')
-rw-r--r-- | src/scripting/luascript.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/scripting/luascript.cpp b/src/scripting/luascript.cpp index ee72706..23e4fdb 100644 --- a/src/scripting/luascript.cpp +++ b/src/scripting/luascript.cpp @@ -19,14 +19,14 @@ * along with The Mana Server. If not, see <http://www.gnu.org/licenses/>. */ -#include <cassert> - #include "luascript.hpp" #include "game-server/being.hpp" - #include "utils/logger.h" +#include <cassert> +#include <cstring> + LuaScript::~LuaScript() { lua_close(mState); @@ -83,9 +83,9 @@ int LuaScript::execute() mCurFunction = ""; } -void LuaScript::load(const char *prog) +void LuaScript::load(const char *prog, const char *name) { - int res = luaL_loadstring(mState, prog); + int res = luaL_loadbuffer(mState, prog, std::strlen(prog), name); if (res) { switch (res) { |