summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErik Faye-Lund <kusmabite@gmail.com>2011-04-10 22:54:17 +0200
committerJunio C Hamano <gitster@pobox.com>2011-04-11 14:10:05 -0700
commit5e7a5d97f8a74181634a70e0e7b1464855c5af2d (patch)
tree8d0b9376618d91fd6940ac801bc22fb2c7e29a59
parente923eaeb901ff056421b9007adcbbce271caa7b6 (diff)
downloadgit-5e7a5d97f8a74181634a70e0e7b1464855c5af2d.tar.gz
strbuf: make sure buffer is zero-terminated
strbuf_init does not zero-terminate the initial buffer when hint is non-zero. Fix this so we can rely on the string to be zero-terminated even if we haven't filled it with anything yet. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--strbuf.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/strbuf.c b/strbuf.c
index bc3a0802ea..73e0400596 100644
--- a/strbuf.c
+++ b/strbuf.c
@@ -30,8 +30,10 @@ void strbuf_init(struct strbuf *sb, size_t hint)
{
sb->alloc = sb->len = 0;
sb->buf = strbuf_slopbuf;
- if (hint)
+ if (hint) {
strbuf_grow(sb, hint);
+ sb->buf[0] = '\0';
+ }
}
void strbuf_release(struct strbuf *sb)