cat >hexdump <<'EOF'
 #!/bin/sh
-perl -e '$/ = undef; $_ = <>; s/./ord($&)/ge; print $_' "$1"
+perl -e '$/ = undef; $_ = <>; s/./ord($&)/ge; print $_' < "$1"
 EOF
 chmod +x hexdump
 
        printf "\\0\\n" >file &&
        git add file &&
        git commit -m one &&
-       printf "\\1\\n" >>file &&
+       printf "\\01\\n" >>file &&
        git add file &&
        git commit -m two
 '
        test_cmp expect.binary actual
 '
 
+test_expect_success 'status -v produces text' '
+       git reset --soft HEAD^ &&
+       git status -v >diff &&
+       find_diff <diff >actual &&
+       test_cmp expect.text actual &&
+       git reset --soft HEAD@{1}
+'
+
 cat >expect.stat <<'EOF'
  file |  Bin 2 -> 4 bytes
  1 files changed, 0 insertions(+), 0 deletions(-)
 -1
 diff --git a/file b/file
 new file mode 120000
-index ad8b3d2..67be421
+index 0000000..67be421
 --- /dev/null
 +++ b/file
 @@ -0,0 +1 @@
 \ No newline at end of file
 EOF
 # make a symlink the hard way that works on symlink-challenged file systems
-test_expect_failure 'textconv does not act on symlinks' '
-       echo -n frotz > file &&
+test_expect_success 'textconv does not act on symlinks' '
+       printf frotz > file &&
        git add file &&
        git ls-files -s | sed -e s/100644/120000/ |
                git update-index --index-info &&