X-Git-Url: https://git.archive.openwrt.org/?a=blobdiff_plain;f=libs%2Fweb%2Fluasrc%2Fconfig.lua;h=53db82b322d58c4b4b3abb8817d579c89331c1cf;hb=6697e282afa58f2ccacbdafc9ad84abb30cdee36;hp=258f5e655faa3f08986313a87954d02756854164;hpb=a8a72c1ec8bc0625dad70f22ec85ff7e9e477074;p=project%2Fluci.git diff --git a/libs/web/luasrc/config.lua b/libs/web/luasrc/config.lua index 258f5e655..53db82b32 100644 --- a/libs/web/luasrc/config.lua +++ b/libs/web/luasrc/config.lua @@ -25,9 +25,18 @@ limitations under the License. ]]-- +local util = require "luci.util" module("luci.config", function(m) if pcall(require, "luci.model.uci") then - setmetatable(m, {__index = luci.model.uci.cursor():get_all("luci")}) + local config = util.threadlocal() + setmetatable(m, { + __index = function(tbl, key) + if not config[key] then + config[key] = luci.model.uci.cursor():get_all("luci", key) + end + return config[key] + end + }) end - end) \ No newline at end of file + end)