Prevent invalid form_update_line() call in formUpdateBuffer()

Bug-Debian: https://github.com/tats/w3m/issues/82
This commit is contained in:
Tatsuya Kinoshita
2016-12-24 12:58:44 +09:00
parent d3048fe281
commit dc32152dc0

3
form.c
View File

@@ -490,7 +490,8 @@ formUpdateBuffer(Anchor *a, Buffer *buf, FormItemList *form)
spos = a->start.pos;
epos = a->end.pos;
}
if (a->start.line != a->end.line || spos > epos || epos >= l->len || spos < 0 || epos < 0)
if (a->start.line != a->end.line || spos > epos || epos >= l->len ||
spos < 0 || epos < 0 || COLPOS(l, epos) < col)
break;
pos = form_update_line(l, &p, spos, epos, COLPOS(l, epos) - col,
rows > 1,