From cd8455b5083eb6e1f7c8b54f8416923a9c004a1b Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Sun, 27 Sep 2026 10:02:33 +0200 Subject: [PATCH] change calc checksum with file with spaces --- src/albentohandy | 8 +++++--- tests/albentohandy.bats | 4 +++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/albentohandy b/src/albentohandy index 02dc343..f5e765d 100755 --- a/src/albentohandy +++ b/src/albentohandy @@ -124,9 +124,11 @@ cleanup_flac() calc_checksum() { cd "$OUTPUT_PATH" || return $? - find . -type f -regex '.*\(\.ogg\|\.mp3\|\.opus\|\.flac\)' \ - | sort \ - | xargs sha256sum > checksum.sha256 + find . -type f \ + -regex '.*\(\.ogg\|\.mp3\|\.opus\|\.flac\)' \ + -print0 \ + | sort --zero-terminated \ + | xargs --null sha256sum > checksum.sha256 } main() diff --git a/tests/albentohandy.bats b/tests/albentohandy.bats index f84a41d..d75df11 100755 --- a/tests/albentohandy.bats +++ b/tests/albentohandy.bats @@ -563,6 +563,7 @@ teardown() { echo "testfile2" > "build/tests/output/Artist1/Album1/02.mp3" echo "testfile1" > "build/tests/output/Artist1/Album1/01.opus" echo "testfile4" > "build/tests/output/Artist1/Album1/bla.flac" + echo "spaces" > "build/tests/output/Artist1/Album1/file with spaces.flac" echo "testfile5" > "build/tests/output/Artist1/Album1/other" echo "testfile6" > "build/tests/output/Artist1/Album1/other.txt" echo "testfile7" > "build/tests/output/Artist1/Album1/cover.jpg" @@ -572,11 +573,12 @@ teardown() { assert_success [ -f "build/tests/output/checksum.sha256" ] - assert_equal "4" "$(wc --lines "build/tests/output/checksum.sha256" | sed 's/ .*//')" + assert_equal "5" "$(wc --lines "build/tests/output/checksum.sha256" | sed 's/ .*//')" assert_equal "$(awk 'NR==1 {print; exit}' "build/tests/output/checksum.sha256")" "49057fb3e3bffe69b082e78550da731593c75bf19b4ba76c44a722defe4393f5 ./Artist1/Album1/01.opus" assert_equal "$(awk 'NR==2 {print; exit}' "build/tests/output/checksum.sha256")" "5ca47f5787b6cba8809184876e8557f8650d92c2b7c63a03d1a9b9aa352f7aae ./Artist1/Album1/02.mp3" assert_equal "$(awk 'NR==3 {print; exit}' "build/tests/output/checksum.sha256")" "1aaea6c72ae66ce6bd36cd08fb511565a34179780d68166515a9f045652088c2 ./Artist1/Album1/bla.flac" assert_equal "$(awk 'NR==4 {print; exit}' "build/tests/output/checksum.sha256")" "96af1c6d5c863aef68cabe54aefc2342e66a9cf6b5663660f2ea8cea86e9f5ce ./Artist1/Album1/blub.ogg" + assert_equal "$(awk 'NR==5 {print; exit}' "build/tests/output/checksum.sha256")" "e47fbedb2823cf1ae4d4cdb8273635be2024cb870588e259c9b23d76ae49d484 ./Artist1/Album1/file with spaces.flac" } # bats test_tags=albentohandy:usage -- 2.47.3