From 3c8647e713630f9e3ca8763af983320731511782 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg <bensberg@justemail.net> Date: Sun, 1 May 2016 11:18:20 +0200 Subject: [PATCH] search: terminate the loop a tiny bit earlier when spell checking The internal spell checker starts searching/replacing always at the top of the buffer, so reaching the end of the buffer means we're done with the current search/replace. This prevents the "Search Wrapped" message from flashing over the statusbar at the end of a spelling replacement. --- src/search.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/search.c b/src/search.c index afb79348..664d2e17 100644 --- a/src/search.c +++ b/src/search.c @@ -308,13 +308,6 @@ int findnextstr( #ifndef DISABLE_SPELLER bool found_whole = FALSE; /* Is this potential match a whole word? */ - - /* When we're spell-checking, don't search in the starting line - * again -- there is no need: we started at x = 0. */ - if (whole_word_only && came_full_circle) { - disable_nodelay(); - return 0; - } #endif /* Remember the length of the potential match. */ found_len = @@ -359,12 +352,20 @@ int findnextstr( /* If we've reached the start or end of the buffer, wrap around. */ if (fileptr == NULL) { +#ifndef DISABLE_SPELLER + /* When we're spell-checking, end-of-buffer means we're done. */ + if (whole_word_only) { + disable_nodelay(); + return 0; + } +#endif #ifndef NANO_TINY if (ISSET(BACKWARDS_SEARCH)) fileptr = openfile->filebot; else #endif fileptr = openfile->fileage; + statusbar(_("Search Wrapped")); /* Delay the "Searching..." message for at least two seconds. */ feedback = -2; -- GitLab