summaryrefslogtreecommitdiff
path: root/desktop/textinput.c
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/textinput.c')
-rw-r--r--desktop/textinput.c12
1 files changed, 7 insertions, 5 deletions
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: