diff --git a/ChangeLog b/ChangeLog index 3f6b65e6eedc3c63783ffb262cefff91287845e8..f3393aed8510caca32db0131f87e684f1d5b9562 100644 --- a/ChangeLog +++ b/ChangeLog @@ -124,6 +124,12 @@ CVS code - nregcomp() - Rename the variable flags to eflags so as not to conflict with the global flags. (DLR) +- search.c: + do_replace_loop() + - Make sure old_pww is updated to the current value of + placewewant when a new match is found, so that edit_redraw() + will redraw the screen properly when only placewewant changes. + (DLR, found by Mike Frysinger) - utils.c: parse_num() - New function to parse numeric values, so that we don't have to diff --git a/src/search.c b/src/search.c index 56839e59a4c92143ed41a5cd49332b73fc7e0688..4d153c2d052cc47c5b5e7b3bc6c19cde01ac72ca 100644 --- a/src/search.c +++ b/src/search.c @@ -635,8 +635,11 @@ int do_replace_loop(const char *needle, const filestruct *real_current, } #endif - if (!replaceall) + if (!replaceall) { + placewewant = xplustabs(); edit_redraw(current_save, old_pww); + old_pww = placewewant; + } #ifdef HAVE_REGEX_H if (ISSET(USE_REGEXP))