mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-23 23:46:16 +02:00
[package] 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. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22629 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
698224c6c8
commit
e3198ce2ac
@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
|
|||||||
include $(INCLUDE_DIR)/kernel.mk
|
include $(INCLUDE_DIR)/kernel.mk
|
||||||
|
|
||||||
PKG_NAME:=base-files
|
PKG_NAME:=base-files
|
||||||
PKG_RELEASE:=51
|
PKG_RELEASE:=52
|
||||||
|
|
||||||
PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
|
PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
|
||||||
|
|
||||||
|
@ -97,6 +97,7 @@ list() {
|
|||||||
local len
|
local len
|
||||||
|
|
||||||
config_get len "$CONFIG_SECTION" "${varname}_LENGTH" 0
|
config_get len "$CONFIG_SECTION" "${varname}_LENGTH" 0
|
||||||
|
[ $len = 0 ] && append CONFIG_LIST_STATE "${CONFIG_SECTION}_${varname}"
|
||||||
len=$(($len + 1))
|
len=$(($len + 1))
|
||||||
config_set "$CONFIG_SECTION" "${varname}_ITEM$len" "$value"
|
config_set "$CONFIG_SECTION" "${varname}_ITEM$len" "$value"
|
||||||
config_set "$CONFIG_SECTION" "${varname}_LENGTH" "$len"
|
config_set "$CONFIG_SECTION" "${varname}_LENGTH" "$len"
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
UCI_VERSION=12012009
|
UCI_VERSION=12012009
|
||||||
UCI_RELEASE=5
|
UCI_RELEASE=6
|
||||||
|
|
||||||
PKG_NAME:=uci
|
PKG_NAME:=uci
|
||||||
PKG_VERSION:=$(UCI_VERSION)$(if $(UCI_RELEASE),.$(UCI_RELEASE))
|
PKG_VERSION:=$(UCI_VERSION)$(if $(UCI_RELEASE),.$(UCI_RELEASE))
|
||||||
|
@ -23,9 +23,15 @@ uci_load() {
|
|||||||
local PACKAGE="$1"
|
local PACKAGE="$1"
|
||||||
local DATA
|
local DATA
|
||||||
local RET
|
local RET
|
||||||
|
local VAR
|
||||||
|
|
||||||
_C=0
|
_C=0
|
||||||
if [ -z "$CONFIG_APPEND" ]; then
|
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_SECTIONS=
|
||||||
export ${NO_EXPORT:+-n} CONFIG_NUM_SECTIONS=0
|
export ${NO_EXPORT:+-n} CONFIG_NUM_SECTIONS=0
|
||||||
export ${NO_EXPORT:+-n} CONFIG_SECTION=
|
export ${NO_EXPORT:+-n} CONFIG_SECTION=
|
||||||
|
Loading…
Reference in New Issue
Block a user