From c845e01ec7e950196bfa5038163ac28ac342568a Mon Sep 17 00:00:00 2001 From: Syndamia Date: Sun, 8 Nov 2026 20:10:41 +0200 Subject: fix(scripts): Normalise bad file path in archive scripts --- scripts/archive | 15 ++++++++++++--- scripts/unarchive | 15 ++++++++++++--- 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/scripts/archive b/scripts/archive index 8d2f2d3..b75feb7 100755 --- a/scripts/archive +++ b/scripts/archive @@ -7,7 +7,7 @@ then set "$REPLY" fi -set "$(echo -e "a\n$1\n.\n1s|\.\+/||g\n1s|/\+|/|g\n1p\nQ" | ed -sqr | tail -1)" +set "$(echo -e "a\n$1/\n.\n1s|\.\+/||g\n1s|/\+|/|g\n1p\nQ" | ed -sqr | tail -1)" if [ ! -d "$1" ] then @@ -15,11 +15,20 @@ then exit 1 fi +set "${1%%/objects/*}" +set "${1%%/refs/*}" + __rec_ro() { while read -r f do - chwrite -w "$1/$f" - [ -d "$1/$f" ] && __rec_ro "$1/$f" + if [ -n "$f" ] + then + chwrite -w "$1/$f" + if [ -d "$1/$f" ] + then + __rec_ro "$1/$f" + fi + fi done <