From: Junio C Hamano Date: Mon, 07 Nov 2011 16:47:23 GMT Subject: Re: [PATCH] blame.c: Properly initialize strbuf after calling textconv_object(), again Message-ID: <7vy5vr282s.fsf@alter.siamese.dyndns.org> In-Reply-To: <4EB7FEE6.9000609@gmail.com> Sebastian Schuberth writes: > 2564aa4 started to initialize buf.alloc, but that should actually be one > more byte than the string length due to the trailing \0. Even when the conversion result is a zero-length string? > --- Sign-off? > builtin/blame.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/builtin/blame.c b/builtin/blame.c > index 86c0537..45f0dcc 100644 > --- a/builtin/blame.c > +++ b/builtin/blame.c > @@ -2114,7 +2114,7 @@ static struct commit *fake_working_tree_commit(struct diff_options *opt, > case S_IFREG: > if (DIFF_OPT_TST(opt, ALLOW_TEXTCONV) && > textconv_object(read_from, mode, null_sha1, &buf.buf, &buf_len)) { > - buf.alloc = buf_len; > + buf.alloc = buf_len + 1; > buf.len = buf_len; > } > else if (strbuf_read_file(&buf, read_from, st.st_size) != st.st_size)