From f4fb35b3911e9c01a4a1f2c6ce8b5e1c766000a9 Mon Sep 17 00:00:00 2001 From: thepeople Date: Wed, 16 May 2007 14:46:23 +0000 Subject: keep uci_set from saving things that have not changed git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7259 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/base-files/files/lib/config/uci.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'package/base-files') diff --git a/package/base-files/files/lib/config/uci.sh b/package/base-files/files/lib/config/uci.sh index a76300fa0..e0293363b 100644 --- a/package/base-files/files/lib/config/uci.sh +++ b/package/base-files/files/lib/config/uci.sh @@ -76,8 +76,11 @@ uci_set() { ( # spawn a subshell so you don't mess up the current environment uci_load "$PACKAGE" - config_get type "$CONFIG" TYPE - [ -z "$type" ] + config_get OLDVAL "$CONFIG" "$OPTION" + if [ "$OLDVAL" != "$VALUE" ]; then + config_get type "$CONFIG" TYPE + [ -z "$type" ] + fi ) || uci_add_update "$PACKAGE" "config_set '$CONFIG' '$OPTION' '$VALUE'" } -- cgit v1.2.3