From 4ef86cacadfed121d2ea07f4580003c33a371bb8 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Fri, 5 Dec 2008 15:37:39 +0000 Subject: [PATCH] Reload luci.config for each thread --- libs/web/luasrc/config.lua | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/libs/web/luasrc/config.lua b/libs/web/luasrc/config.lua index 258f5e655f..53db82b322 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) -- 2.30.2