From: Travis Kemen <thepeople@openwrt.org>
Date: Wed, 16 May 2007 14:46:23 +0000 (+0000)
Subject: keep uci_set from saving things that have not changed
X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=ff111c2511fb093fde422ac8f194bba53f457586;p=openwrt%2Fstaging%2Fthess.git

keep uci_set from saving things that have not changed

SVN-Revision: 7259
---

diff --git a/package/base-files/files/lib/config/uci.sh b/package/base-files/files/lib/config/uci.sh
index a76300fa0c..e0293363b3 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'"
 }