diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2010-08-14 00:45:15 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2010-08-14 00:45:15 +0000 |
commit | 63991ba875e46f40324352a5317d144465567833 (patch) | |
tree | d33580ca49e3f28b03fc6b93bcab0336ea64f471 /package/base-files | |
parent | 6616951c15bef73a09da4cbbe2eb956e74e8b164 (diff) | |
download | mtk-20170518-63991ba875e46f40324352a5317d144465567833.zip mtk-20170518-63991ba875e46f40324352a5317d144465567833.tar.gz mtk-20170518-63991ba875e46f40324352a5317d144465567833.tar.bz2 |
base-files, uci: properly revert list state on config_load This fixes a bug where lists end up with duplicate values if config_load was invoked multiple times.
SVN-Revision: 22629
Diffstat (limited to 'package/base-files')
-rw-r--r-- | package/base-files/Makefile | 2 | ||||
-rwxr-xr-x | package/base-files/files/etc/functions.sh | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/package/base-files/Makefile b/package/base-files/Makefile index 137eb62..0393260 100644 --- a/package/base-files/Makefile +++ b/package/base-files/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=base-files -PKG_RELEASE:=51 +PKG_RELEASE:=52 PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/ diff --git a/package/base-files/files/etc/functions.sh b/package/base-files/files/etc/functions.sh index fa0ba04..d5ffc13 100755 --- a/package/base-files/files/etc/functions.sh +++ b/package/base-files/files/etc/functions.sh @@ -97,6 +97,7 @@ list() { local len config_get len "$CONFIG_SECTION" "${varname}_LENGTH" 0 + [ $len = 0 ] && append CONFIG_LIST_STATE "${CONFIG_SECTION}_${varname}" len=$(($len + 1)) config_set "$CONFIG_SECTION" "${varname}_ITEM$len" "$value" config_set "$CONFIG_SECTION" "${varname}_LENGTH" "$len" |