patch 8.0.1483: searchpair() might return an invalid value on timeout
Problem: Searchpair() might return an invalid value on timeout.
Solution: When the second search times out, do not accept a match from the
first search. (Daniel Hahler, closes #2552)
diff --git a/src/search.c b/src/search.c
index 42351d5..efcf3d9 100644
--- a/src/search.c
+++ b/src/search.c
@@ -973,7 +973,16 @@
NULL, NULL
#endif
)) == 0)
+ {
+#ifdef FEAT_RELTIME
+ /* If the search timed out, we did find a match
+ * but it might be the wrong one, so that's not
+ * OK. */
+ if (timed_out != NULL && *timed_out)
+ match_ok = FALSE;
+#endif
break;
+ }
/* Need to get the line pointer again, a
* multi-line search may have made it invalid. */