[PATCH v2 2/2] uhttpd: Execute uci commit and reload_config once

Hauke Mehrtens hauke at hauke-m.de
Sat Mar 20 19:57:34 GMT 2021


Instead of doing uci commit and reload_config for each setting do it
only once when one of these options was changed. This should make it a
little faster when both conditions are taken.

Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
---
 package/network/services/uhttpd/files/ubus.default | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/package/network/services/uhttpd/files/ubus.default b/package/network/services/uhttpd/files/ubus.default
index b218d3f85d11..474016c1c557 100644
--- a/package/network/services/uhttpd/files/ubus.default
+++ b/package/network/services/uhttpd/files/ubus.default
@@ -1,15 +1,17 @@
 #!/bin/sh
 
+commit=0
+
 if [ -z "$(uci -q get uhttpd.main.ubus_prefix)" ]; then
 	uci set uhttpd.main.ubus_prefix=/ubus
-	uci commit uhttpd
-	/etc/init.d/uhttpd reload
+	commit=1
 fi
 
 [ "$(uci -q get uhttpd.main.ubus_socket)" = "/var/run/ubus.sock" ] && {
 	uci set uhttpd.main.ubus_socket='/var/run/ubus/ubus.sock'
-	uci commit uhttpd
-	/etc/init.d/uhttpd reload
+	commit=1
 }
 
+[ "$commit" = 1 ] && uci commit uhttpd && /etc/init.d/uhttpd reload
+
 exit 0
-- 
2.30.2




More information about the openwrt-devel mailing list