[PATCH 2/2] fsck: treat a NUL in a tag header as an error
- From
René Scharfe <l.s.r@web.de>
- Date
- Nov 19, 2015, 16:25 UTC
- Message-ID
- <564DF7FB.3090704@web.de>
- In-Reply-To
- <564DF6BE.6020609@web.de>
We check the return value of verify_header() for commits already, so do the same for tags as well.
Signed-off-by: Rene Scharfe <l.s.r@web.de> --- fsck.c | 3 ++- t/t1450-fsck.sh | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/fsck.c b/fsck.c index e41e753..4060f1f 100644 --- a/fsck.c +++ b/fsck.c @@ -711,7 +711,8 @@ static int fsck_tag_buffer(struct tag *tag, const char *data, } } - if (verify_headers(buffer, size, &tag->object, options)) + ret = verify_headers(buffer, size, &tag->object, options); + if (ret) goto done; if (!skip_prefix(buffer, "object ", &buffer)) { diff --git a/t/t1450-fsck.sh b/t/t1450-fsck.sh index 6c96953..e66b7cb 100755 --- a/t/t1450-fsck.sh +++ b/t/t1450-fsck.sh @@ -288,7 +288,7 @@ test_expect_success 'tag with bad tagger' ' grep "error in tag .*: invalid author/committer" out ' -test_expect_failure 'tag with NUL in header' ' +test_expect_success 'tag with NUL in header' ' sha=$(git rev-parse HEAD) && q_to_nul >tag-NUL-header <<-EOF && object $sha
-- 2.6.3