]> git.wh0rd.org Git - nano.git/commitdiff
in do_replace_loop(), when moving to the next match, update the screen
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Mon, 6 Jun 2005 03:46:32 +0000 (03:46 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Mon, 6 Jun 2005 03:46:32 +0000 (03:46 +0000)
using edit_refresh() instead of edit_redraw(), as the latter won't work
properly when we've replaced one or more instances of a string in copy
and haven't yet updated current->data to match copy

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2599 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

ChangeLog
src/search.c

index 136d3be72691070507d93d5da306f9fe77d947fb..0badeffed103c54d4a1b36a993c3a8e27dbe1935 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -134,6 +134,12 @@ CVS code -
   replace_line()
        - Make new_line_size and search_match_count size_t's, for
          consistency. (DLR)
+  do_replace_loop()
+       - When moving to the next match, update the screen using
+         edit_refresh() instead of edit_redraw(), as the latter won't
+         work properly when we've replaced one or more instances of a
+         string in copy and haven't yet updated current->data to match
+         copy. (DLR)
 - utils.c:
   num_of_digits()
        - Use a size_t instead of an int, and rename to digits(). (DLR)
index 0fbdac9a6af116415dfce7dbb6ffea415b132bcc..45ec4f6fb63f6728069861151a610cd8c03fd55c 100644 (file)
@@ -681,7 +681,6 @@ ssize_t do_replace_loop(const char *needle, const filestruct
 {
     ssize_t numreplaced = -1;
     size_t match_len;
-    size_t pww_save = placewewant;
     bool replaceall = FALSE;
 #ifdef HAVE_REGEX_H
     /* The starting-line match and bol/eol regex flags. */
@@ -743,10 +742,8 @@ ssize_t do_replace_loop(const char *needle, const filestruct
        }
 #endif
 
-       if (!replaceall) {
-           edit_redraw(real_current, pww_save);
-           pww_save = placewewant;
-       }
+       if (!replaceall)
+           edit_refresh();
 
        /* Record for the return value that we found the search
         * string. */