--- ./src/list.c.orig 2017-12-16 15:23:12.000000000 -0600 +++ ./src/list.c 2018-09-06 16:51:52.982740004 -0500 @@ -242,15 +242,22 @@ if (!ignore_zeros_option) { - char buf[UINTMAX_STRSIZE_BOUND]; + + /* + * According to POSIX tar specs, this is wrong, but on the web + * there are some tar specs that can trigger this, and some tar + * implementations create tars according to that spec. For now, + * let's not be pedantic about issuing the warning. + * + * char buf[UINTMAX_STRSIZE_BOUND]; */ status = read_header (¤t_header, ¤t_stat_info, read_header_auto); - if (status == HEADER_ZERO_BLOCK) - break; - WARNOPT (WARN_ALONE_ZERO_BLOCK, - (0, 0, _("A lone zero block at %s"), - STRINGIFY_BIGINT (current_block_ordinal (), buf))); + /* if (status == HEADER_ZERO_BLOCK) + * break; + * WARNOPT (WARN_ALONE_ZERO_BLOCK, + * (0, 0, _("A lone zero block at %s"), + * STRINGIFY_BIGINT (current_block_ordinal (), buf))); */ break; } status = prev_status;