From: Jeff King Date: Fri, 24 Mar 2017 17:26:24 GMT Subject: [PATCH 2/4] fast-import: use xsnprintf for formatting headers Message-ID: <20170324172624.ddqquklvam2emn24@sigill.intra.peff.net> In-Reply-To: <20170324172246.fy5drvhzqxghu44a@sigill.intra.peff.net> The stream_blob() function checks the return value of snprintf and dies. This is more simply done with xsnprintf (and matches the similar call in store_object). The message the user would get is less specific, but since the point is that this _shouldn't_ ever happen, that's OK. Signed-off-by: Jeff King --- fast-import.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/fast-import.c b/fast-import.c index 4e0f3f5dd..4a057e81f 100644 --- a/fast-import.c +++ b/fast-import.c @@ -1237,9 +1237,7 @@ static void stream_blob(uintmax_t len, unsigned char *sha1out, uintmax_t mark) sha1file_checkpoint(pack_file, &checkpoint); offset = checkpoint.offset; - hdrlen = snprintf((char *)out_buf, out_sz, "blob %" PRIuMAX, len) + 1; - if (out_sz <= hdrlen) - die("impossibly large object header"); + hdrlen = xsnprintf((char *)out_buf, out_sz, "blob %" PRIuMAX, len) + 1; git_SHA1_Init(&c); git_SHA1_Update(&c, out_buf, hdrlen); -- 2.12.1.843.g1937c56c2