From f8543464c13584e39bfacee694ee1ed80ac121f4 Mon Sep 17 00:00:00 2001 From: Determinant Date: Tue, 26 May 2015 23:58:32 +0800 Subject: fix a severe bug in memory management of userdata --- io/init.lua | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'io/init.lua') diff --git a/io/init.lua b/io/init.lua index d96f062..dc1c6c3 100644 --- a/io/init.lua +++ b/io/init.lua @@ -22,7 +22,8 @@ function nerv.ParamFile:read_param(id) if metadata == nil then nerv_error("param with id %s does not exist", id) end - local param = assert(loadstring("return " .. metadata.type .. "(" .. id .. ")"))() + local param = assert(loadstring("return " .. + metadata.type .. "(\"" .. id .. "\")"))() param:set_info(metadata.info) param:read(self:get_chunkdata(id)) return param -- cgit v1.2.3-70-g09d2