t9001: avoid including non-trailing NUL bytes in variables
authorbrian m. carlson <sandals@crustytoothpaste.net>
Wed, 27 Nov 2019 19:01:42 +0000 (19:01 +0000)
committerJunio C Hamano <gitster@pobox.com>
Sat, 30 Nov 2019 22:00:33 +0000 (14:00 -0800)
commitc64368e3a2a4749d71b703ae31dee6e451a80f54
tree1623f33733412f6f082fbff820503dd72b4808bd
parent5fa0f5238b0cd46cfe7f6fa76c3f526ea98148d9
t9001: avoid including non-trailing NUL bytes in variables

In this test, we have a command substitution whose output starts with a
NUL byte.  bash and dash strip out any NUL bytes from the output; zsh
does not.  As a consequence, zsh fails this test, since the command line
argument we use the variable in is truncated by the NUL byte.

POSIX says of a command substitution that if "the output contains any
null bytes, the behavior is unspecified," so all of the shells are in
compliance with POSIX.  To make our code more portable, let's avoid
prefacing our variables with NUL bytes and instead leave only the
trailing one behind.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t9001-send-email.sh