diff options
author | Johannes Schindelin <Johannes.Schindelin@gmx.de> | 2008-05-16 14:03:30 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-05-25 13:21:40 -0700 |
commit | cce8d6fdb4d7170a73763586daf6ac4f6b8fce2c (patch) | |
tree | 636ecb4162561aa5bdfa5a86128fa941fc1ea617 /t | |
parent | 182fb4df9120257c2e6b041dd58eef3de5b530d2 (diff) | |
download | git-cce8d6fdb4d7170a73763586daf6ac4f6b8fce2c.tar.gz git-cce8d6fdb4d7170a73763586daf6ac4f6b8fce2c.tar.xz |
mailsplit and mailinfo: gracefully handle NUL characters
The function fgets() has a big problem with NUL characters: it reads
them, but nobody will know if the NUL comes from the file stream, or
was appended at the end of the line.
So implement a custom read_line_with_nul() function.
Noticed by Tommy Thorn.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
-rwxr-xr-x | t/t5100-mailinfo.sh | 9 | ||||
-rw-r--r-- | t/t5100/nul | bin | 0 -> 91 bytes |
2 files changed, 9 insertions, 0 deletions
diff --git a/t/t5100-mailinfo.sh b/t/t5100-mailinfo.sh index d6c55c115..5a4610b86 100755 --- a/t/t5100-mailinfo.sh +++ b/t/t5100-mailinfo.sh @@ -25,4 +25,13 @@ do diff ../t5100/info$mail info$mail" done +test_expect_success 'respect NULs' ' + + git mailsplit -d3 -o. ../t5100/nul && + cmp ../t5100/nul 001 && + (cat 001 | git mailinfo msg patch) && + test 4 = $(wc -l < patch) + +' + test_done diff --git a/t/t5100/nul b/t/t5100/nul Binary files differnew file mode 100644 index 000000000..3d4069178 --- /dev/null +++ b/t/t5100/nul |