On 9/21/25 14:36, Alyssa Ross wrote:
Demi Marie Obenour <demiobenour@gmail.com> writes:
Don't call it if the target directory already exists.
Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com> --- scripts/make-erofs.sh | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/scripts/make-erofs.sh b/scripts/make-erofs.sh index ac62a65f53e0b6417b164f475a537960fc5203bc..30b83b0b41cbe7bc4fd7786cfcdddcf10c78cc5a 100755 --- a/scripts/make-erofs.sh +++ b/scripts/make-erofs.sh @@ -44,10 +44,15 @@ while read -r arg1; do # a subset of all paths, but this subset includes all of # the ones passed in practice other than /. case $arg2 in - (*/*) parent=${arg2%/*};; - (*) parent=.;; + (*/*) + # Make the parent directory if needed + parent=$root/${arg2%/*} + if [ ! -d "$parent" ]; then mkdir -p -- "$parent"; fi + ;; + (*) + # Parent $root which definitely exists + ;; esac - mkdir -p -- "$root/$parent" cp -RT -- "$arg1" "$root/$arg2" done
I saw a statistically significant speedup in hyperfine. :)
Reviewed-by: Alyssa Ross <hi@alyssa.is>
Yay! This is independent of the rest of the series, so feel free to commit. -- Sincerely, Demi Marie Obenour (she/her/hers)