t0090: tweak awk statement for Solaris /usr/xpg4/bin/awk
The awk statements previously used in this test weren't compatible with the native versions of awk on Solaris: echo "dir" | /bin/awk -v c=0 '$1 {++c} END {print c}' awk: syntax error near line 1 awk: bailing out near line 1 echo "dir" | /usr/xpg4/bin/awk -v c=0 '$1 {++c} END {print c}' 0 Even though we do not cater to tools in /usr/bin on Solaris that have and are overridden by corresponding ones in /usr/xpg?/bin, in this case, even the XPG version does not work correctly. With GNU awk for comparison: echo "dir" | /opt/csw/gnu/awk -v c=0 '$1 {++c} END {print c}' 1 which is what this test expects (and is in line with POSIX; non-empty string is true and an empty string is false). Work this issue around by using $1 != "" to state more explicitly that we are skipping empty lines. Helped-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Ben Walton <bdwalton@gmail.com> Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
c2e8e4b9da
commit
d69360c6b1
@ -22,7 +22,7 @@ generate_expected_cache_tree_rec () {
|
||||
# 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) &&
|
||||
subtree_count=$(echo "$subtrees"|awk -v c=0 '$1 {++c} END {print c}') &&
|
||||
subtree_count=$(echo "$subtrees"|awk -v c=0 '$1 != "" {++c} END {print c}') &&
|
||||
entries=$(git ls-files|wc -l) &&
|
||||
printf "SHA $dir (%d entries, %d subtrees)\n" "$entries" "$subtree_count" &&
|
||||
for subtree in $subtrees
|
||||
|
Loading…
Reference in New Issue
Block a user