fix paragraph searching code regression: if trying to move to the line

after the end of the next paragraph leaves us on the same line where we
were before, the search should fail in order to avoid an infinite loop


git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2383 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
master
David Lawrence Ramsey 2005-03-17 04:24:12 +00:00
parent efec641a82
commit fd81a7189b
1 changed files with 8 additions and 6 deletions

View File

@ -2865,14 +2865,16 @@ bool find_paragraph(size_t *const quote, size_t *const par)
/* Find the first line of the current or next paragraph. First, if /* Find the first line of the current or next paragraph. First, if
* the current line isn't in a paragraph, move forward to the line * the current line isn't in a paragraph, move forward to the line
* after the end of the next paragraph. If the line before that * after the end of the next paragraph. If we end up on the same
* isn't in a paragraph, it means there aren't any paragraphs left, * line, or the line before that isn't in a paragraph, it means that
* so get out. Otherwise, if the current line is in a paragraph and * there aren't any paragraphs left, so get out. Otherwise, if the
* it isn't the first line of that paragraph, move back to the first * current line is in a paragraph and it isn't the first line of
* line. */ * that paragraph, move back to the first line. */
if (!inpar(current)) { if (!inpar(current)) {
filestruct *current_save = current;
do_para_end(FALSE); do_para_end(FALSE);
if (!inpar(current->prev)) if (current == current_save || !inpar(current->prev))
return FALSE; return FALSE;
} }
if (!begpar(current)) if (!begpar(current))