From e3326d282e18bf6096290a0c35d31fa9b13dd195 Mon Sep 17 00:00:00 2001 From: Evgeny Date: Wed, 4 Aug 2021 16:05:46 +0300 Subject: [PATCH] fix readme --- README_ru.md | 3 +-- bad-script.lua | 4 +++- sandbox.lua | 10 ++++++++++ 3 files changed, 14 insertions(+), 3 deletions(-) create mode 100644 sandbox.lua diff --git a/README_ru.md b/README_ru.md index 725e90a..16cc746 100644 --- a/README_ru.md +++ b/README_ru.md @@ -113,11 +113,10 @@ end # Другие функции -AIO Launcher включает в себя интерпретатор LuaJ 3.0.1 (совместимый с Lua 5.2) со стандартным набором библиотек: `base`, `bit32`, `coroutine`, `io`, `math`, `os`, `package`, `string table`. +AIO Launcher включает в себя интерпретатор LuaJ 3.0.1 (совместимый с Lua 5.2) со стандартным набором библиотек: `base`, `bit32`, `coroutine`, `io`, `math`, `os`, `package`, `string`, `table`. В комплект также входят: -* [LuaJava](https://github.com/luaj/luaj#the-luajava-library) - прямой вызов методов Java; * [Penlight](http://stevedonovan.github.io/Penlight/api/manual/01-introduction.md.html) - набор портированных из Python функций и структур данных; * [luaDate](https://github.com/Tieske/date) - функции для работы со временем; * [json.lua](https://github.com/rxi/json.lua) - парзер JSON; diff --git a/bad-script.lua b/bad-script.lua index b2280ec..bd46fae 100644 --- a/bad-script.lua +++ b/bad-script.lua @@ -1,3 +1,5 @@ function on_resume() - while true do end + while true do + ui:show_text("bad") + end end diff --git a/sandbox.lua b/sandbox.lua new file mode 100644 index 0000000..58f9dfc --- /dev/null +++ b/sandbox.lua @@ -0,0 +1,10 @@ +function sandbox(func) + local co = coroutine.create(func) + local hook = function() coroutine.yield('resource used too many cycles') end + + debug.setupvalue(func, 1, _G) + debug.sethook(co, hook, "", 100) + + coroutine.resume(co) +end +