Multiple consecutive null bytes with log -z --name-only

From: Drew Noakes <hidden>
Date: 2018-07-27 20:21:10

Hi all,

I'm a developer on the Git Extensions project [1] and am looking at an
issue parsing the output of `git log` in that application.

Some investigation suggests that a certain combination of arguments causes
multiple consecutive null bytes between rows, where I would ordinarily
expect one.

Passing -z with --name-only causes double nulls.

$ git log -z --pretty=format:"%H" --name-only | grep -obUaP "\x00\x00" | wc
-l
8994
$ git log -z --pretty=format:"%H" | grep -obUaP "\x00\x00" | wc -l
0

We can work around this issue, but I would like to understand if it's a bug
or if there's some information to be gleaned here.

$ git --version
git version 2.18.0.windows.1

Many thanks,

Drew

[1] https://github.com/gitextensions/gitextensions
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help