X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Futils%2Fstrbuf.c;h=7d8bc5527f6138f7a1c8ad6cf6730c6445c3460b;hb=4a307afc0bddeba03e26d2d6d284b3f96f80a931;hp=6c881be18e4975517f4c5080747e5d6f83a183f1;hpb=45c5e83e104a382734eb30b90bf88aff4370d64f;p=sysdb.git diff --git a/src/utils/strbuf.c b/src/utils/strbuf.c index 6c881be..7d8bc55 100644 --- a/src/utils/strbuf.c +++ b/src/utils/strbuf.c @@ -154,8 +154,8 @@ sdb_strbuf_vappend(sdb_strbuf_t *strbuf, const char *fmt, va_list ap) } /* 'status' does not include nul-byte */ - if ((size_t)status >= strbuf->size - strbuf->pos - 1) { - if (strbuf_resize(strbuf, strbuf->size + (size_t)status + 1)) { + if ((size_t)status >= strbuf->size - strbuf->pos) { + if (strbuf_resize(strbuf, strbuf->pos + (size_t)status + 1)) { va_end(aq); return -1; } @@ -364,5 +364,13 @@ sdb_strbuf_len(sdb_strbuf_t *strbuf) return strbuf->pos; } /* sdb_strbuf_string */ +size_t +sdb_strbuf_cap(sdb_strbuf_t *strbuf) +{ + if (! strbuf) + return 0; + return strbuf->size; +} /* sdb_strbuf_cap */ + /* vim: set tw=78 sw=4 ts=4 noexpandtab : */