summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--libs/web/luasrc/config.lua13
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)