aboutsummaryrefslogtreecommitdiffstats
path: root/core/configmanager.lua
diff options
context:
space:
mode:
Diffstat (limited to 'core/configmanager.lua')
-rw-r--r--core/configmanager.lua8
1 files changed, 4 insertions, 4 deletions
diff --git a/core/configmanager.lua b/core/configmanager.lua
index b7ee605f..1fbe83b8 100644
--- a/core/configmanager.lua
+++ b/core/configmanager.lua
@@ -68,7 +68,7 @@ function load(filename, format)
if parsers[format] and parsers[format].load then
local f, err = io.open(filename);
if f then
- local ok, err = parsers[format].load(f:read("*a"));
+ local ok, err = parsers[format].load(f:read("*a"), filename);
f:close();
if ok then
eventmanager.fire_event("config-reloaded", { filename = filename, format = format });
@@ -99,7 +99,7 @@ do
local loadstring, pcall, setmetatable = _G.loadstring, _G.pcall, _G.setmetatable;
local setfenv, rawget, tostring = _G.setfenv, _G.rawget, _G.tostring;
parsers.lua = {};
- function parsers.lua.load(data)
+ function parsers.lua.load(data, filename)
local env;
-- The ' = true' are needed so as not to set off __newindex when we assign the functions below
env = setmetatable({ Host = true; host = true; Component = true, component = true,
@@ -139,7 +139,7 @@ do
local f, err = io.open(file);
if f then
local data = f:read("*a");
- local ok, err = parsers.lua.load(data);
+ local ok, err = parsers.lua.load(data, file);
if not ok then error(err:gsub("%[string.-%]", file), 0); end
end
if not f then error("Error loading included "..file..": "..err, 0); end
@@ -147,7 +147,7 @@ do
end
env.include = env.Include;
- local chunk, err = loadstring(data);
+ local chunk, err = loadstring(data, "@"..filename);
if not chunk then
return nil, err;