plugin_dir[#plugin_dir + 1] = path;
end
-local io_open, os_time = io.open, os.time;
-local loadstring, pairs = loadstring, pairs;
+local io_open = io.open;
+local envload = require "util.envload".envload;
module "pluginloader"
-local function load_file(names)
+function load_file(names)
local file, err, path;
for i=1,#plugin_dir do
for j=1,#names do
return load_file(names);
end
-function load_code(plugin, resource)
+function load_code(plugin, resource, env)
local content, err = load_resource(plugin, resource);
if not content then return content, err; end
local path = err;
- local f, err = loadstring(content, "@"..path);
+ local f, err = envload(content, "@"..path, env);
if not f then return f, err; end
return f, path;
end