From: Jo-Philipp Wich Date: Sat, 26 Jul 2008 00:30:22 +0000 (+0000) Subject: * luci/libs/core: strip bytecode from serialized data too in get_bytecode() X-Git-Tag: 0.8.0~570 X-Git-Url: http://207.154.207.93/?a=commitdiff_plain;h=81cf9b02065714ad6976dc6466a3b84ffa0f06c7;p=project%2Fluci.git * luci/libs/core: strip bytecode from serialized data too in get_bytecode() --- diff --git a/libs/core/luasrc/util.lua b/libs/core/luasrc/util.lua index 2686445de..2d821acff 100644 --- a/libs/core/luasrc/util.lua +++ b/libs/core/luasrc/util.lua @@ -441,16 +441,19 @@ end -- --- Return the current runtime bytecode of the given data. The byte code --- will be stripped before it is returned if the given value is a function. +-- will be stripped before it is returned. -- @param val Value to return as bytecode -- @return String value containing the bytecode of the given data function get_bytecode(val) + local code + if type(val) == "function" then - local code = string.dump(val) - return code and strip_bytecode(code) + code = string.dump(val) else - return string.dump( loadstring( "return " .. serialize_data(val) ) ) + code = string.dump( loadstring( "return " .. serialize_data(val) ) ) end + + return code and strip_bytecode(code) end --- Strips unnescessary lua bytecode from given string. Information like line