t0090: avoid passing empty string to printf %d
FreeBSD's printf(1) doesn't accept empty strings for numerical format specifiers: $ printf "%d\n" "" >/dev/null; echo $? printf: : expected numeric value 1 Initialize the AWK variable c to make sure the shell variable subtree_count always contains a numerical value, in order to keep the subsequently called printf happy. Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
René Scharfe committed
Sep 30, 2014 at 19:42 UTC
c8db708d5d865a2085230687689868520863abe1
1 file changed
+1
-1
t/t0090-cache-tree.sh
+1
-1
@@ -22,7 +22,7 @@ generate_expected_cache_tree_rec () {
22
# ls-files might have foo/bar, foo/bar/baz, and foo/bar/quux
23
# We want to count only foo because it's the only direct child
24
subtrees=$(git ls-files|grep /|cut -d / -f 1|uniq) &&
25
- subtree_count=$(echo "$subtrees"|awk '$1 {++c} END {print c}') &&
25
+ subtree_count=$(echo "$subtrees"|awk -v c=0 '$1 {++c} END {print c}') &&
26
entries=$(git ls-files|wc -l) &&
27
printf "SHA $dir (%d entries, %d subtrees)\n" "$entries" "$subtree_count" &&
28
for subtree in $subtrees