summaryrefslogtreecommitdiff
path: root/strbuf.h
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2017-09-10 08:08:22 (GMT)
committerJunio C Hamano <gitster@pobox.com>2017-09-10 08:08:22 (GMT)
commita48ce378585054f2ae3b2f0e18346ab005290524 (patch)
treebfb2fab6ffc87128bd4cbc03ff40a83ce07f8001 /strbuf.h
parent3ec7d702a89c647ddf42a59bc3539361367de9d5 (diff)
parent6cdf8a7929688ea5702ab53f450d038e973e64e1 (diff)
downloadgit-a48ce378585054f2ae3b2f0e18346ab005290524.zip
git-a48ce378585054f2ae3b2f0e18346ab005290524.tar.gz
git-a48ce378585054f2ae3b2f0e18346ab005290524.tar.bz2
Merge branch 'ma/ts-cleanups'
Assorted bugfixes and clean-ups. * ma/ts-cleanups: ThreadSanitizer: add suppressions strbuf_setlen: don't write to strbuf_slopbuf pack-objects: take lock before accessing `remaining` convert: always initialize attr_action in convert_attrs
Diffstat (limited to 'strbuf.h')
-rw-r--r--strbuf.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/strbuf.h b/strbuf.h
index e705b94..7496cb8 100644
--- a/strbuf.h
+++ b/strbuf.h
@@ -147,7 +147,10 @@ static inline void strbuf_setlen(struct strbuf *sb, size_t len)
if (len > (sb->alloc ? sb->alloc - 1 : 0))
die("BUG: strbuf_setlen() beyond buffer");
sb->len = len;
- sb->buf[len] = '\0';
+ if (sb->buf != strbuf_slopbuf)
+ sb->buf[len] = '\0';
+ else
+ assert(!strbuf_slopbuf[0]);
}
/**