Re: [PATCH] strbuf: allocate enough space when strbuf_setlen() is called first time
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:51:05
Nguyễn Thái Ngọc Duy [off-list ref] writes:
quoted hunk
strbuf_grow(sb, 0) may allocate less than requested len and violate the next assertion. Signed-off-by: Nguyễn Thái Ngọc Duy <redacted> --- strbuf.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)diff --git a/strbuf.h b/strbuf.h index 07060ce..ab213da 100644 --- a/strbuf.h +++ b/strbuf.h@@ -34,7 +34,7 @@ extern void strbuf_grow(struct strbuf *, size_t); static inline void strbuf_setlen(struct strbuf *sb, size_t len) { if (!sb->alloc) - strbuf_grow(sb, 0); + strbuf_grow(sb, len); assert(len < sb->alloc);
Wait. Isn't _setlen() meant to be used only to truncate at the length, and isn't that clearly documented? I don't think we need this patch at all.