1) nand_upgrade_tar: use a simpler condition that matches if () { }
   logic and fix check of $kernel_length variable
2) nand_do_upgrade_stage2: use case, otherwise one could believe we
   always call nand_upgrade_tar

Signed-off-by: Rafał Miłecki <zaj...@gmail.com>
---
This hasn't been tested on any hardware, could someone try that just in
case?
---
 package/system/procd/files/nand.sh | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/package/system/procd/files/nand.sh 
b/package/system/procd/files/nand.sh
index 0d30810..1da63e2 100644
--- a/package/system/procd/files/nand.sh
+++ b/package/system/procd/files/nand.sh
@@ -250,10 +250,10 @@ nand_upgrade_tar() {
        local has_kernel=1
        local has_env=0
 
-       [ "kernel_length" = 0 -o -z "$kernel_mtd" ] || {
+       [ "$kernel_length" != 0 -a -n "$kernel_mtd" ] && {
                tar xf $tar_file sysupgrade-$board_name/kernel -O | mtd write - 
$CI_KERNPART
        }
-       [ "kernel_length" = 0 -o ! -z "$kernel_mtd" ] && has_kernel=0
+       [ "$kernel_length" = 0 -o ! -z "$kernel_mtd" ] && has_kernel=0
 
        nand_upgrade_prepare_ubi "$rootfs_length" "$rootfs_type" "$has_kernel" 
"$has_env"
 
@@ -277,9 +277,11 @@ nand_do_upgrade_stage2() {
 
        [ ! "$(find_mtd_index "$CI_UBIPART")" ] && CI_UBIPART="rootfs"
 
-       [ "$file_type" = "ubi" ] && nand_upgrade_ubinized $1
-       [ "$file_type" = "ubifs" ] && nand_upgrade_ubifs $1
-       nand_upgrade_tar $1
+       case "$file_type" in
+               "ubi")          nand_upgrade_ubinized $1;;
+               "ubifs")        nand_upgrade_ubifs $1;;
+               *)              nand_upgrade_tar $1;;
+       esac
 }
 
 nand_upgrade_stage2() {
-- 
1.8.4.5
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to