From 09140f93c7ce77eee24b1078425f5933acf75d7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Sat, 2 Mar 2019 17:47:41 +0100 Subject: Fix lingering strbuf off by one error. --- guile_type_helpers.c | 2 +- strbuf.c | 7 +++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/guile_type_helpers.c b/guile_type_helpers.c index 5c7090ec..ae433b01 100644 --- a/guile_type_helpers.c +++ b/guile_type_helpers.c @@ -5,7 +5,7 @@ SCM scm_from_strbuf(strbuf* s) { if (s->scm == NULL) { - s->scm = scm_from_utf8_stringn (s->mem, s->len - 1); + s->scm = scm_from_utf8_stringn (s->mem, s->len); scm_gc_protect_object(s->scm); } diff --git a/strbuf.c b/strbuf.c index f3becfc7..886276e5 100644 --- a/strbuf.c +++ b/strbuf.c @@ -55,10 +55,9 @@ char strbuf_pop(strbuf* s) { } int strbuf_cap(strbuf* s) { - /* - * TODO check memmory usage - */ - return strbuf_append(s, 0); + strbuf_append(s, 0); + --s->len; + return 0; } int DEEP_COPY(strbuf)(strbuf* dest, strbuf* src) { -- cgit v1.2.3