From: Juergen Spitzmueller Date: Tue, 12 Jan 2021 15:11:58 +0000 (+0100) Subject: Ignore tracked deletions in simple find (#11051) X-Git-Tag: 2.4.0-alpha3~306 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=d87511308bdcca7545cef5f9c63a7fbde6ccf9b0;p=lyx.git Ignore tracked deletions in simple find (#11051) --- diff --git a/src/Paragraph.cpp b/src/Paragraph.cpp index 1b6a766fb5..8181b1c4b6 100644 --- a/src/Paragraph.cpp +++ b/src/Paragraph.cpp @@ -4388,6 +4388,13 @@ int Paragraph::find(docstring const & str, bool cs, bool mw, int i = 0; pos_type const parsize = d->text_.size(); for (i = 0; i < strsize && pos < parsize; ++i, ++pos) { + // ignore deleted matter + if (!del && isDeleted(pos)) { + if (pos == parsize - 1) + break; + pos++; + continue; + } // Ignore "invisible" letters such as ligature breaks // and hyphenation chars while searching while (pos < parsize - 1 && isInset(pos)) { @@ -4404,8 +4411,6 @@ int Paragraph::find(docstring const & str, bool cs, bool mw, break; if (!cs && uppercase(str[i]) != uppercase(d->text_[pos])) break; - if (!del && isDeleted(pos)) - break; } if (i != strsize) diff --git a/src/lyxfind.cpp b/src/lyxfind.cpp index abbabf9a34..677b382b84 100644 --- a/src/lyxfind.cpp +++ b/src/lyxfind.cpp @@ -464,7 +464,7 @@ bool lyxfind(BufferView * bv, FuncRequest const & ev) bool matchword = parse_bool(howto); bool forward = parse_bool(howto); - return findOne(bv, search, casesensitive, matchword, forward, true, true); + return findOne(bv, search, casesensitive, matchword, forward, false, true); }