From: Steven Barth Date: Mon, 15 Sep 2008 17:03:55 +0000 (+0000) Subject: Tuned dispatcher behaviour X-Git-Tag: 0.8.0~79 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=d61d0795a190dc7f63d6015790809990c9b72bf4;p=project%2Fluci.git Tuned dispatcher behaviour --- diff --git a/libs/web/luasrc/dispatcher.lua b/libs/web/luasrc/dispatcher.lua index 12093fe7a4..8e8e19063b 100644 --- a/libs/web/luasrc/dispatcher.lua +++ b/libs/web/luasrc/dispatcher.lua @@ -352,17 +352,8 @@ function assign(path, clone, title, order) obj.title = title obj.order = order - - local c = context.tree - for k, v in ipairs(clone) do - if not c.nodes[v] then - c.nodes[v] = {nodes={}} - end - c = c.nodes[v] - end - - setmetatable(obj, {__index = c}) + setmetatable(obj, {__index = _create_node(clone)}) return obj end @@ -388,7 +379,7 @@ end -- @param ... Virtual path -- @return Dispatching tree node function node(...) - local c = _create_node(arg) + local c = _create_node({...}) c.module = getfenv(2)._NAME c.path = arg