This is mainly to handle error message "Broken pipe" by common pattern "xcat | dd .."
Ref: https://bugs.openwrt.org/index.php?do=details&task_id=3140 Reported-by: Philip Prindeville <[email protected]> Signed-off-by: Yousong Zhou <[email protected]> --- package/base-files/files/lib/upgrade/common.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/package/base-files/files/lib/upgrade/common.sh b/package/base-files/files/lib/upgrade/common.sh index 808fad178b..654f24d0a7 100644 --- a/package/base-files/files/lib/upgrade/common.sh +++ b/package/base-files/files/lib/upgrade/common.sh @@ -94,6 +94,12 @@ get_image() { # <source> [ <command> ] $cmd <"$from" } +get_image_dd() { + local from="$1"; shift + + ( get_image "$from" | dd "$@" ) 2>&1 | grep -v -F ': Broken pipe' +} + get_magic_word() { (get_image "$@" | dd bs=2 count=1 | hexdump -v -n 2 -e '1/1 "%02x"') 2>/dev/null } _______________________________________________ openwrt-devel mailing list [email protected] https://lists.openwrt.org/mailman/listinfo/openwrt-devel
