diff options
author | Thorsten Glaser <tg@mirbsd.org> | 2014-05-03 11:36:16 +0000 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2014-05-03 14:33:12 +0200 |
commit | 8a0005b61300850e11fe19202ccd2118736ec661 (patch) | |
tree | 20cf79ad72c7895c5b55542da7e51d802fab7012 | |
parent | 0bb1dee8453d8d723263fe63c38781faf6cb2bc6 (diff) |
pass patches NUL-terminated
Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
-rw-r--r-- | scripts/update-patches | 11 | ||||
-rw-r--r-- | scripts/update-patches2 | 2 |
2 files changed, 8 insertions, 5 deletions
diff --git a/scripts/update-patches b/scripts/update-patches index b7e3d485d..1d13a3901 100644 --- a/scripts/update-patches +++ b/scripts/update-patches @@ -116,7 +116,7 @@ for file in $(cd ${WRKDIST}; find . -type f | sed 's#^\./##'); do $(grep -c "^+++ $D_CMP" "$i") -gt 1 ]]; then print -ru2 -- "Cannot process, $i contains patches" print -ru2 -- "to multiple files! Aborting." - echo FAIL + print -n 'FAIL\0' [[ -n $SUBDIST ]] && mv \ "${WRKDIR1}/${SUBDIST}.orig" \ "${WRKDIR1}.orig/${SUBDIST}" @@ -137,7 +137,7 @@ for file in $(cd ${WRKDIST}; find . -type f | sed 's#^\./##'); do print -ru2 -- "Cannot process, file $file" print -ru2 -- "is contained in multiple patches:" print -ru2 -- "$pflst" - echo FAIL + print -n 'FAIL\0' [[ -n $SUBDIST ]] && mv \ "${WRKDIR1}/${SUBDIST}.orig" \ "${WRKDIR1}.orig/${SUBDIST}" @@ -150,7 +150,7 @@ for file in $(cd ${WRKDIST}; find . -type f | sed 's#^\./##'); do ( sed -e "/^--- /,\$d" <"$i"; \ cd "$D_BASE" && do_diff "$file" "$D_SUB.orig" "$D_SUB" \ ) >"$i.new" - # did it change ? mark it as changed + # did it change? mark it as changed tfile=$(print -r -- "$file" | $TRANSFORM) if eval diff "$(print -r -- "${DIFF_FLAGS}" | sed \ "s#@@#${tfile}#g")" "$i" "$i.new" 1>&2; then @@ -188,6 +188,9 @@ for i in *; do (( found )) || print -ru2 -- "*** Patch $i not accounted for" done -print -r -- "${edit[@]}" +for i in "${edit[@]}"; do + print -nr -- "$i" + print -n '\0' +done [[ -n $SUBDIST ]] && mv "${WRKDIR1}/${SUBDIST}.orig" "${WRKDIR1}.orig/${SUBDIST}" exit 0 diff --git a/scripts/update-patches2 b/scripts/update-patches2 index 8f8711af7..2b8349bcf 100644 --- a/scripts/update-patches2 +++ b/scripts/update-patches2 @@ -25,7 +25,7 @@ export CURDIR PATCH_LIST mksh "${TOPDIR}"/scripts/update-patches |& first=1 set -A toedit -while IFS= read -p -r; do +while IFS= read -p -d '' -r; do if (( first )); then if [[ $REPLY = FAIL ]]; then rm -rf "${WRKDIR1}.orig" |