diff options
author | Steven Barth <steven@midlink.org> | 2008-12-05 15:36:44 +0000 |
---|---|---|
committer | Steven Barth <steven@midlink.org> | 2008-12-05 15:36:44 +0000 |
commit | 7540f86d40b23b04dd2de16ed90fc024d2cfa4ce (patch) | |
tree | f797ff9a3a78e083340305721a434692d31fa153 /libs/web | |
parent | 23cbde0f448f2e0a1db83c91a024df038383eb9a (diff) |
Reload luci.config for each thread
Diffstat (limited to 'libs/web')
-rw-r--r-- | libs/web/luasrc/config.lua | 13 |
1 files changed, 11 insertions, 2 deletions
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) |