From a3a351bb597b29c8b9ee813fb9eb0cb09e7518f7 Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Thu, 12 Dec 2019 23:26:04 +0100 Subject: [PATCH] Improved handling of dd failure --- xorriso-dd-target/xorriso-dd-target | 9 ++++++++- xorriso-dd-target/xorriso-dd-target.xdt | 9 ++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/xorriso-dd-target/xorriso-dd-target b/xorriso-dd-target/xorriso-dd-target index f8cafd83..07df6173 100755 --- a/xorriso-dd-target/xorriso-dd-target +++ b/xorriso-dd-target/xorriso-dd-target @@ -670,7 +670,14 @@ write_image() { else echo "Performing:" echo " $sudo_cmd $dd_cmd if='${1}' bs=1M of=/dev/'${2}' ; sync" - $sudo_cmd "$dd_cmd" if="${1}" bs=1M of=/dev/"${2}" ; sync + $sudo_cmd "$dd_cmd" if="${1}" bs=1M of=/dev/"${2}" + ret="$?" + sync + if test "$ret" -ne 0 + then + echo "FAILURE: $sudo_cmd $dd_cmd was not successful" >&2 + return 18 + fi fi # >>> ??? Erase possible GPT backup table at end of device ? diff --git a/xorriso-dd-target/xorriso-dd-target.xdt b/xorriso-dd-target/xorriso-dd-target.xdt index 79f0bccb..df7c1f99 100755 --- a/xorriso-dd-target/xorriso-dd-target.xdt +++ b/xorriso-dd-target/xorriso-dd-target.xdt @@ -706,7 +706,14 @@ xdt_write_image() { else echo "Performing:" echo " $xdt_sudo_cmd $xdt_dd_cmd if='${1}' bs=1M of=/dev/'${2}' ; sync" - $xdt_sudo_cmd "$xdt_dd_cmd" if="${1}" bs=1M of=/dev/"${2}" ; sync + $xdt_sudo_cmd "$xdt_dd_cmd" if="${1}" bs=1M of=/dev/"${2}" + xdt_ret="$?" + sync + if test "$xdt_ret" -ne 0 + then + echo "FAILURE: $xdt_sudo_cmd $xdt_dd_cmd was not successful" >&2 + return 18 + fi fi # >>> ??? Erase possible GPT backup table at end of device ?