]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
base-files: commit and sync before removing defaults script. 20248/head
authorMarkus Gothe <markus.gothe@genexis.eu>
Thu, 25 Sep 2025 08:32:58 +0000 (10:32 +0200)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 4 Oct 2025 18:49:21 +0000 (20:49 +0200)
Improve the resilence against power failures during
boot-up by trying to sync the file system before
removing the script. The order of the operations
are important.

Signed-off-by: Markus Gothe <markus.gothe@genexis.eu>
Link: https://github.com/openwrt/openwrt/pull/20248
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
package/base-files/files/etc/init.d/boot

index a26d4886b2873bc09995e50fc8d5931a3f238275..ab25c11129da1baccc094684f296b9a92eedbf25 100755 (executable)
@@ -10,10 +10,13 @@ uci_apply_defaults() {
        cd /etc/uci-defaults || return 0
        files="$(ls)"
        [ -z "$files" ] && return 0
+       applied=""
        for file in $files; do
-               ( . "./$(basename $file)" ) && rm -f "$file"
+               ( . "./$(basename $file)" ) && applied="$applied $file"
        done
        uci commit
+       sync
+       rm -f $applied
 }
 
 boot() {