From 9f8c07adc5271b8f53f2e32efde9f1998cc9e64c Mon Sep 17 00:00:00 2001 From: jow Date: Mon, 15 Nov 2010 10:29:04 +0000 Subject: [PATCH] [backfire] merge r22629 git-svn-id: svn://svn.openwrt.org/openwrt/branches/backfire@24003 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/base-files/Makefile | 2 +- package/base-files/files/etc/functions.sh | 1 + package/uci/Makefile | 2 +- package/uci/files/lib/config/uci.sh | 6 ++++++ 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/package/base-files/Makefile b/package/base-files/Makefile index 06496bae3..530eaa811 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:=43.8 +PKG_RELEASE:=43.9 PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/ PKG_BUILD_DEPENDS:=opkg/host diff --git a/package/base-files/files/etc/functions.sh b/package/base-files/files/etc/functions.sh index 134b520f0..acea61753 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" diff --git a/package/uci/Makefile b/package/uci/Makefile index bf0107f77..4bf89533f 100644 --- a/package/uci/Makefile +++ b/package/uci/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk UCI_VERSION=12012009 -UCI_RELEASE=5 +UCI_RELEASE=6 PKG_NAME:=uci PKG_VERSION:=$(UCI_VERSION)$(if $(UCI_RELEASE),.$(UCI_RELEASE)) diff --git a/package/uci/files/lib/config/uci.sh b/package/uci/files/lib/config/uci.sh index d759615bd..8dcb92b9f 100644 --- a/package/uci/files/lib/config/uci.sh +++ b/package/uci/files/lib/config/uci.sh @@ -23,9 +23,15 @@ uci_load() { local PACKAGE="$1" local DATA local RET + local VAR _C=0 if [ -z "$CONFIG_APPEND" ]; then + for VAR in $CONFIG_LIST_STATE; do + export ${NO_EXPORT:+-n} CONFIG_${VAR}= + export ${NO_EXPORT:+-n} CONFIG_${VAR}_LENGTH= + done + export ${NO_EXPORT:+-n} CONFIG_LIST_STATE= export ${NO_EXPORT:+-n} CONFIG_SECTIONS= export ${NO_EXPORT:+-n} CONFIG_NUM_SECTIONS=0 export ${NO_EXPORT:+-n} CONFIG_SECTION=