Subject: Re: 'git status -z' missing separators on OSX

From: Jeff King <[email-masked]>
Date: Wed, 17 Jun 2015 15:17:04 -0400

On Wed, Jun 17, 2015 at 09:07:36AM -0500, Tad Hardesty wrote:

> Everything looks normal using the commands you described, and it does appear to only affect status:
> 
> ~/test (master)$ type git
> git is hashed (/usr/local/bin/git)
> ~/test (master)$ git config --list
> core.repositoryformatversion=0
> core.filemode=true
> core.bare=false
> core.logallrefupdates=true
> core.ignorecase=true
> core.precomposeunicode=true
> ~/test (master)$ GIT_TRACE=1 git status -z
> 08:59:11.806197 git.c:348               trace: built-in: git 'status' '-z'
> ~/test (master)$ git log --oneline -1 -z | hexdump -C
> 00000000  35 31 35 39 30 65 30 20  49 6e 69 74 69 61 6c 20  |51590e0 Initial |
> 00000010  63 6f 6d 6d 69 74 2e 00                           |commit..|
> 00000018
> ~/test (master)$ touch c d
> ~/test (master)$ git status -z | hexdump -C
> 00000000  3f 3f 20 63 3f 3f 20 64                           |?? c?? d|
> 00000008
> 
> This is again with 2.4.3 from git-scm.com.

Hmph. I don't really have any more ideas, then. I think my next step
would be to walk it through a debugger (the interesting function is
wt_shortstatus_status, or wt_shortstatus_other).

-Peff