projects
/
project
/
luci.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
(no commit message)
[project/luci.git]
/
module
/
admin-core
/
src
/
controller
/
admin
/
uci.lua
diff --git
a/module/admin-core/src/controller/admin/uci.lua
b/module/admin-core/src/controller/admin/uci.lua
index 2d19db1b29a34d0dd476f066ddc2ae62b7b1a00b..cb4a95ba5c2c930fc8746a19813895fc6201789b 100644
(file)
--- a/
module/admin-core/src/controller/admin/uci.lua
+++ b/
module/admin-core/src/controller/admin/uci.lua
@@
-8,26
+8,29
@@
function action_apply()
local output = ""
if changes then
local output = ""
if changes then
- local apply = {}
+ local com = {}
+ local run = {}
- -- Collect files to be applied
+ -- Collect files to be applied
and commit changes
for i, line in ipairs(ffluci.util.split(changes)) do
local r = line:match("^-?([^.]+)")
if r then
for i, line in ipairs(ffluci.util.split(changes)) do
local r = line:match("^-?([^.]+)")
if r then
- table.insert(apply, ffluci.config.uci_oncommit[r])
+ com[r] = true
+
+ if ffluci.config.uci_oncommit and ffluci.config.uci_oncommit[r] then
+ run[ffluci.config.uci_oncommit[r]] = true
+ end
end
end
end
end
- -- Commit changes
- ffluci.model.uci.commit()
+ -- Apply
+ for config, i in pairs(com) do
+ ffluci.model.uci.commit(config)
+ end
-- Search for post-commit commands
-- Search for post-commit commands
- if ffluci.config.uci_oncommit then
- for i, cmd in ipairs(apply) do
- if cmd then
- output = output .. cmd .. ":" .. ffluci.sys.exec(cmd)
- end
- end
+ for cmd, i in pairs(run) do
+ output = output .. cmd .. ":" .. ffluci.sys.exec(cmd) .. "\n"
end
end
end
end