Jürgen Spitzmüller schrieb:
Michael Gerz wrote:
      for (; cur; cur.forwardChar())
-             if (cur.inTexted() && match(cur.paragraph(), cur.pos()))
+             if (cur.inTexted() &&
+                 (find_del || !cur.paragraph().isDeleted(cur.pos())) &&
+                 match(cur.paragraph(), cur.pos()))
                      return true;
      return false;
 }
AFAICS, you only check the deletion status of the first character. However,
ALL matching characters shouldn't be marked as deleted.

I don't understand. I just assure that a character is skipped on find if it is marked deleted. Since the loop moves ahead, this test applies to all characters of a word. And nothing will be "marked" anyway.

Or do I miss something?
Maybe I was talking nonsense. I just looked at the patch (without the surrounding code). It looked like you check for the first character and then match(...) tries to match the complete string.

If this isn't true, please ingore my comment and ask for another OK. (I have to leave in a few seconds.)

Michael

Reply via email to