archive-tar: convert snprintf to xsnprintf
Commitf2f0267
(archive-tar: use xsnprintf for trivial formatting, 2015-09-24) converted cases of "sprintf" to "xsnprintf", but accidentally left one as just "snprintf". This meant that we could silently truncate the resulting buffer instead of flagging an error. In practice, this is impossible to achieve, as we are formatting a ustar checksum, which can be at most 7 characters. But the point of xsnprintf is to document and check for "should be impossible" conditions; this site was just accidentally mis-converted duringf2f0267
. Noticed-by: Paul Green <Paul.Green@stratus.com> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
d62c89afb2
commit
9e6c1e91a3
@ -181,7 +181,7 @@ static void prepare_header(struct archiver_args *args,
|
|||||||
memcpy(header->magic, "ustar", 6);
|
memcpy(header->magic, "ustar", 6);
|
||||||
memcpy(header->version, "00", 2);
|
memcpy(header->version, "00", 2);
|
||||||
|
|
||||||
snprintf(header->chksum, sizeof(header->chksum), "%07o", ustar_header_chksum(header));
|
xsnprintf(header->chksum, sizeof(header->chksum), "%07o", ustar_header_chksum(header));
|
||||||
}
|
}
|
||||||
|
|
||||||
static int write_extended_header(struct archiver_args *args,
|
static int write_extended_header(struct archiver_args *args,
|
||||||
|
Loading…
Reference in New Issue
Block a user