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 коммит произвёл Junio C Hamano
Родитель 17e9ef00d2
Коммит 71d41ff651
2 изменённых файлов: 4 добавлений и 5 удалений

Просмотреть файл

@ -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));
}
/*

Просмотреть файл

@ -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