diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/eval.c | 7 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/eval.c b/src/eval.c index 41e816ef00..7093051b76 100644 --- a/src/eval.c +++ b/src/eval.c @@ -14189,6 +14189,10 @@ searchpair_cmn(argvars, match_pos) goto theend; } + /* Using 'r' implies 'W', otherwise it doesn't work. */ + if (flags & SP_REPEAT) + p_ws = FALSE; + /* Optional fifth argument: skip expression */ if (argvars[3].v_type == VAR_UNKNOWN || argvars[4].v_type == VAR_UNKNOWN) @@ -14345,6 +14349,9 @@ do_searchpair(spat, mpat, epat, dir, skip, flags, match_pos, } foundpos = pos; + /* clear the start flag to avoid getting stuck here */ + options &= ~SEARCH_START; + /* If the skip pattern matches, ignore this match. */ if (*skip != NUL) { diff --git a/src/version.c b/src/version.c index dcb5667fa0..2a259f79ee 100644 --- a/src/version.c +++ b/src/version.c @@ -667,6 +667,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 238, +/**/ 237, /**/ 236, |