From: Yann E. MORIN Date: Tue, 5 Jul 2016 17:36:03 +0000 (+0200) Subject: support/apply-patches: re-instate set -e X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d5ae67b4f4b4256a392997f81c9668c6809aab3b;p=buildroot.git support/apply-patches: re-instate set -e As reported by Sébastien Szymanski [1], the apply-patches script doesn't stop if a tar command can't extract an archive. Use "set -e" to exit immediately if a command return an error. Be sure to ignore any expected error: when we check if a patch to be applied has the same basename as an already applied patch, the grep would fail when no such patch was already applied. We should not fail in this case. Signed-off-by: "Yann E. MORIN" Cc: Sébastien Szymanski Cc: Romain Naour Reviewed-by: Romain Naour Tested-by: Romain Naour Signed-off-by: Thomas Petazzoni --- diff --git a/support/scripts/apply-patches.sh b/support/scripts/apply-patches.sh index 694302d33e..7ccb39dd8f 100755 --- a/support/scripts/apply-patches.sh +++ b/support/scripts/apply-patches.sh @@ -31,6 +31,8 @@ # applied. The list of the patches applied is stored in '.applied_patches_list' # file in the build directory. +set -e + silent= if [ "$1" = "-s" ] ; then # add option to be used by the patch tool @@ -103,7 +105,7 @@ function apply_patch { echo "Error: missing patch file ${path}/$patch" exit 1 fi - existing="$(grep -E "/${patch}\$" ${builddir}/.applied_patches_list)" + existing="$(grep -E "/${patch}\$" ${builddir}/.applied_patches_list || true)" if [ -n "${existing}" ]; then echo "Error: duplicate filename '${patch}'" echo "Conflicting files are:"