From: Matthias Schiffer Date: Mon, 10 Jul 2017 08:35:19 +0000 (+0200) Subject: base-files: upgrade: correctly handle nand_do_upgrade argument passed from preupgrade X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=7a29e44f9075b14ca959a730faa7fc6e2e23393f;p=openwrt%2Fstaging%2Fblocktrron.git base-files: upgrade: correctly handle nand_do_upgrade argument passed from preupgrade Fixes: 30f61a34b4cf "base-files: always use staged sysupgrade" Signed-off-by: Matthias Schiffer --- diff --git a/package/base-files/files/lib/upgrade/common.sh b/package/base-files/files/lib/upgrade/common.sh index fc59bf2323..c8b71015c2 100644 --- a/package/base-files/files/lib/upgrade/common.sh +++ b/package/base-files/files/lib/upgrade/common.sh @@ -211,7 +211,7 @@ default_do_upgrade() { do_upgrade_stage2() { v "Performing system upgrade..." if [ -n "$do_upgrade" ]; then - $do_upgrade "$IMAGE" + eval "$do_upgrade" elif type 'platform_do_upgrade' >/dev/null 2>/dev/null; then platform_do_upgrade "$IMAGE" else diff --git a/package/base-files/files/lib/upgrade/nand.sh b/package/base-files/files/lib/upgrade/nand.sh index 6b2bdba256..563db4c320 100644 --- a/package/base-files/files/lib/upgrade/nand.sh +++ b/package/base-files/files/lib/upgrade/nand.sh @@ -289,7 +289,7 @@ nand_do_upgrade() { # hook; this piece of code handles scripts that haven't been # updated. All scripts should gradually move to call nand_do_upgrade # from platform_do_upgrade instead. - export do_upgrade=nand_do_upgrade + export do_upgrade="nand_do_upgrade '$1'" return fi