]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t0090: stop losing return codes of git commands
authorDenton Liu <liu.denton@gmail.com>
Wed, 27 Nov 2019 19:53:11 +0000 (11:53 -0800)
committerJunio C Hamano <gitster@pobox.com>
Fri, 29 Nov 2019 21:20:14 +0000 (13:20 -0800)
In generate_expected_cache_tree_rec(), there are currently two instances
of `git ls-files` in the upstream of a pipe. In the case where the
upstream git command fails, its return code will be lost. Extract the
`git ls-files` into its own call so that if it ever fails, its return
code is not lost.

Signed-off-by: Denton Liu <liu.denton@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t0090-cache-tree.sh

index ce9a4a5f324b74d61d8f0c8abcaee866cbe874e9..5a633690bffc8ac0783f668abb5a96af557515b3 100755 (executable)
@@ -21,9 +21,10 @@ generate_expected_cache_tree_rec () {
        parent="$2" &&
        # ls-files might have foo/bar, foo/bar/baz, and foo/bar/quux
        # We want to count only foo because it's the only direct child
-       subtrees=$(git ls-files|grep /|cut -d / -f 1|uniq) &&
+       git ls-files >files &&
+       subtrees=$(grep / files|cut -d / -f 1|uniq) &&
        subtree_count=$(echo "$subtrees"|awk -v c=0 '$1 != "" {++c} END {print c}') &&
-       entries=$(git ls-files|wc -l) &&
+       entries=$(wc -l <files) &&
        printf "SHA $dir (%d entries, %d subtrees)\n" "$entries" "$subtree_count" &&
        for subtree in $subtrees
        do