render: search: fix off-by-one error in number of visible characters

This commit is contained in:
Daniel Eklöf 2020-02-29 11:41:40 +01:00
parent 601dc02ea1
commit f67572208d
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F

View file

@ -1119,7 +1119,7 @@ render_search_box(struct terminal *term)
pixman_color_t fg = color_hex_to_pixman(term->colors.table[0]); pixman_color_t fg = color_hex_to_pixman(term->colors.table[0]);
if (term->search.cursor < glyph_offset || if (term->search.cursor < glyph_offset ||
term->search.cursor >= glyph_offset + visible_chars + 2) term->search.cursor >= glyph_offset + visible_chars + 1)
{ {
/* Make sure cursor is always visible */ /* Make sure cursor is always visible */
term->render.search_glyph_offset = glyph_offset = term->search.cursor; term->render.search_glyph_offset = glyph_offset = term->search.cursor;
@ -1127,7 +1127,7 @@ render_search_box(struct terminal *term)
/* Text (what the user entered - *not* match(es)) */ /* Text (what the user entered - *not* match(es)) */
for (size_t i = glyph_offset; for (size_t i = glyph_offset;
i < term->search.len && i - glyph_offset < visible_chars + 1; i < term->search.len && i - glyph_offset < visible_chars;
i++) i++)
{ {
if (i == term->search.cursor) if (i == term->search.cursor)