aboutsummaryrefslogtreecommitdiffstats
path: root/form.c
diff options
context:
space:
mode:
authorTatsuya Kinoshita <tats@debian.org>2016-08-24 10:05:31 +0000
committerTatsuya Kinoshita <tats@debian.org>2016-11-19 05:14:31 +0000
commite0b3ef3c20810f7148d350ab17afd0ae8d433693 (patch)
treebce2edaa4c189f3c58525c9ccdaed6710066e3e0 /form.c
parentTruncate max_width for renderTable (diff)
downloadw3m-e0b3ef3c20810f7148d350ab17afd0ae8d433693.tar.gz
w3m-e0b3ef3c20810f7148d350ab17afd0ae8d433693.zip
Prevent segfault for formUpdateBuffer
Bug-Debian: https://github.com/tats/w3m/issues/22 [CVE-2016-9440] Origin: https://anonscm.debian.org/cgit/collab-maint/w3m.git/commit/?id=4a8d16fc8d08206dd7142435054ee38ff41805b7
Diffstat (limited to 'form.c')
-rw-r--r--form.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/form.c b/form.c
index 779ba2f..20b7310 100644
--- a/form.c
+++ b/form.c
@@ -461,6 +461,8 @@ formUpdateBuffer(Anchor *a, Buffer *buf, FormItemList *form)
#endif /* MENU_SELECT */
p = form->value->ptr;
l = buf->currentLine;
+ if (!l)
+ break;
if (form->type == FORM_TEXTAREA) {
int n = a->y - buf->currentLine->linenumber;
if (n > 0)