diff options
author | Anthony Zhang <azhang9@gmail.com> | 2013-03-23 17:49:25 -0400 |
---|---|---|
committer | Anthony Zhang <azhang9@gmail.com> | 2013-03-23 17:49:25 -0400 |
commit | 6983db6d82b5b415c5e141aa360b46efa3e3a209 (patch) | |
tree | 7e51a27c5787d392e4029d13722eaef3aa5169a5 /mesecons_luacontroller | |
parent | 1ff437b7b0b7ebd5f2faf1e2f1e7dcba027beb6b (diff) |
Add math library to luacontroller, and make sure to copy stuff so code can't get out of the sandbox.
Diffstat (limited to 'mesecons_luacontroller')
-rw-r--r-- | mesecons_luacontroller/init.lua | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/mesecons_luacontroller/init.lua b/mesecons_luacontroller/init.lua index 9a835ac..ff429b8 100644 --- a/mesecons_luacontroller/init.lua +++ b/mesecons_luacontroller/init.lua @@ -195,7 +195,8 @@ local create_environment = function(pos, mem, event) mem = mem, tostring = tostring, tonumber = tonumber, - string = string, + string = tablecopy(string), + math = tablecopy(math), event = event} end @@ -222,6 +223,14 @@ local do_overheat = function (pos, meta) end end +local tablecopy = function(t) + local tnew = {} + for key, value in pairs(t) do + tnew[key] = value + end + return tnew +end + local load_memory = function(meta) return minetest.deserialize(meta:get_string("lc_memory")) or {} end |