diff options
author | Jo-Philipp Wich <jo@mein.io> | 2022-11-10 22:33:38 +0100 |
---|---|---|
committer | Jo-Philipp Wich <jo@mein.io> | 2022-11-10 22:33:38 +0100 |
commit | 1da816ddf2b811ae98b5c05f1dbf84653071873e (patch) | |
tree | 6eb5ccfd572e4c4e14dc452dcf03fb460b98213c /modules/luci-lua-runtime | |
parent | 73aca68b9e35857ec155f33ca1b1fb5358d69e52 (diff) |
luci-lua-runtime: dispatcher.lua: translate legacy node "target" property
Some legacy Lua controllers declare menu entries by first invoking `node()`
and then setting the `.target` property on the resulting object.
Make sure to properly translate such menu nodes into the internal menu
JSON representation.
Fixes: #6090
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Diffstat (limited to 'modules/luci-lua-runtime')
-rw-r--r-- | modules/luci-lua-runtime/luasrc/dispatcher.lua | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/modules/luci-lua-runtime/luasrc/dispatcher.lua b/modules/luci-lua-runtime/luasrc/dispatcher.lua index cd850aa365..5c349114c4 100644 --- a/modules/luci-lua-runtime/luasrc/dispatcher.lua +++ b/modules/luci-lua-runtime/luasrc/dispatcher.lua @@ -186,6 +186,11 @@ function process_lua_controller(path) entry.auth = {} end + if entry.action == nil and type(entry.target) == "table" then + entry.action = entry.target + entry.target = nil + end + entry.leaf = nil entry.file_depends = nil |