summaryrefslogtreecommitdiffhomepage
path: root/contrib
diff options
context:
space:
mode:
authorJo-Philipp Wich <jo@mein.io>2020-08-04 18:48:02 +0200
committerJo-Philipp Wich <jo@mein.io>2020-08-04 18:55:21 +0200
commitbd5e2edb465e60be152e6276f282282e4960ca7f (patch)
treed1468210b60b75ba2505dfa89dc61692fb02e99b /contrib
parent9bc58653396c55f0c412278af8358b0d0a125b4c (diff)
luci-base: uci.js: fix option deletion quirks
Since option deletions are sent first, followed by ubus set commands, a call sequence like: uci.set('config', 'section', 'option', ['foo', 'bar']) uci.set('config', 'section', 'option', ['foo']) uci.unset('config', 'section', 'option') ... would result in the option retainining `foo` as value, instead of it getting removed as one would expect. Fix this issue by reverting the internal change state of the option before storing the deletion. While we're at it, also rework the internal tracking of deleted options to not result in duplicate removal requests when the same option is unset several times. Finally change all `undefined` returns to `null` in order to comply with the function documentation. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Diffstat (limited to 'contrib')
0 files changed, 0 insertions, 0 deletions