From 878d8115a00c3dfda8af7275c2955221059b9fc5 Mon Sep 17 00:00:00 2001 From: Connor Olding Date: Sat, 1 Oct 2022 18:26:12 -0700 Subject: [PATCH] util: fix shed logic --- notwa-util/shed | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/notwa-util/shed b/notwa-util/shed index 2dd1f05..53a0440 100644 --- a/notwa-util/shed +++ b/notwa-util/shed @@ -1,11 +1,12 @@ #!/usr/bin/env sh : \ && f="${1?missing filename}" && shift \ - && for e in "$@" \ + && for e in "$@" \ ;do : \ - && cp "$f" "$f.bak" && sed -i -e "$e" "$f" \ - && { diff -q "$f" "$f.bak" >/dev/null; [ $? = 1 ] ;} \ + && { cp "$f" "$f.bak" || exit ;} \ + && sed -i -e "$e" "$f" \ + && { diff -q "$f" "$f.bak" >/dev/null; x=$?; rm "$f.bak" || exit ;} \ + && [ $x = 1 ] \ || { printf >&2 '\033[91mfailed to apply sed:\033[m\n%s\n' "$e"; exit 1 ;} \ - && rm "$f.bak" || exit \ ;done \ ;