aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTatsuya Kinoshita <tats@debian.org>2016-12-24 04:02:41 +0000
committerTatsuya Kinoshita <tats@debian.org>2016-12-24 04:02:41 +0000
commiteb4130a7cd2202de6aeb772b7e4f2a417dbff173 (patch)
treecf62d09569d2cf6b71a2d5b6fb336aeae42e6140
parentPrevent invalid form_update_line() call in formUpdateBuffer() (diff)
downloadw3m-eb4130a7cd2202de6aeb772b7e4f2a417dbff173.tar.gz
w3m-eb4130a7cd2202de6aeb772b7e4f2a417dbff173.zip
Preserve one byte for end of string character in form_update_line()
Bug-Debian: https://github.com/tats/w3m/issues/68#issuecomment-266214643
-rw-r--r--form.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/form.c b/form.c
index 162439a..0605513 100644
--- a/form.c
+++ b/form.c
@@ -320,7 +320,8 @@ form_update_line(Line *line, char **str, int spos, int epos, int width,
pos += width - w;
len = line->len + pos + spos - epos;
- buf = New_N(char, len);
+ buf = New_N(char, len + 1);
+ buf[len] = '\0';
prop = New_N(Lineprop, len);
bcopy((void *)line->lineBuf, (void *)buf, spos * sizeof(char));
bcopy((void *)line->propBuf, (void *)prop, spos * sizeof(Lineprop));