archive-tar: turn length miscalculation warning into BUG

Now that we're confident our pax extended header calculation is correct,
turn the criticality of the assertion up to the maximum, from warning
right up to BUG.  Simplify the test, as the stderr comparison step would
not be reached in case the BUG message is triggered.

Signed-off-by: René Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
René Scharfe 2019-08-17 18:24:23 +02:00 committed by Junio C Hamano
parent 17e9ef00d2
commit 71d41ff651
2 changed files with 4 additions and 5 deletions

View file

@ -158,9 +158,9 @@ static void strbuf_append_ext_header(struct strbuf *sb, const char *keyword,
strbuf_addch(sb, '\n');
if (len != sb->len - orig_len)
warning("pax extended header length miscalculated as %"PRIuMAX
", should be %"PRIuMAX,
(uintmax_t)len, (uintmax_t)(sb->len - orig_len));
BUG("pax extended header length miscalculated as %"PRIuMAX
", should be %"PRIuMAX,
(uintmax_t)len, (uintmax_t)(sb->len - orig_len));
}
/*

View file

@ -220,8 +220,7 @@ build_tree() {
test_expect_success 'tar archive with long paths' '
blob=$(echo foo | git hash-object -w --stdin) &&
tree=$(build_tree $blob | git mktree) &&
git archive -o long_paths.tar $tree 2>stderr &&
test_must_be_empty stderr
git archive -o long_paths.tar $tree
'
test_done