search: bug: re-initialize start-row when attempting a new match

When we've already found a partial match (but *not* a complete match),
and that match spanned multiple lines, then when we continued with the
next start-column we re-used a know-wrong row pointer.
This commit is contained in:
Daniel Eklöf 2019-12-03 20:00:38 +01:00
parent 3c71389993
commit 008281757b
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F

View file

@ -194,14 +194,14 @@ search_find_next(struct terminal *term)
r < term->grid->num_rows;
backward ? ROW_DEC(start_row) : ROW_INC(start_row), r++)
{
const struct row *row = term->grid->rows[start_row];
if (row == NULL)
continue;
for (;
backward ? start_col >= 0 : start_col < term->cols;
backward ? start_col-- : start_col++)
{
const struct row *row = term->grid->rows[start_row];
if (row == NULL)
continue;
if (wcsncasecmp(&row->cells[start_col].wc, term->search.buf, 1) != 0)
continue;