From c2a773b049cd039a3cdc342b9b414b9c43bc8821 Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Sun, 22 Feb 2009 23:30:27 +0000 Subject: Only attempt to find the next character in a string if we're not already at the end of the string. svn path=/trunk/netsurf/; revision=6606 --- desktop/textinput.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'desktop') diff --git a/desktop/textinput.c b/desktop/textinput.c index bae3dce35..927088331 100644 --- a/desktop/textinput.c +++ b/desktop/textinput.c @@ -455,8 +455,7 @@ bool browser_window_textarea_callback(struct browser_window *bw, /* leave caret at join */ reflow = true; - } - else { + } else { /* delete a character */ size_t next_offset = utf8_next(text_box->text, text_box->length, char_offset); @@ -1052,9 +1051,12 @@ bool browser_window_input_callback(struct browser_window *bw, break; } - /* Go to the next valid UTF-8 character */ - box_offset = utf8_next(text_box->text, text_box->length, - box_offset); + if (box_offset < text_box->length) { + /* Go to the next valid UTF-8 character */ + box_offset = utf8_next(text_box->text, + text_box->length, box_offset); + } + break; case KEY_LEFT: -- cgit v1.2.3