updated for version 7.3.1149
Problem: New regexp engine: Matching plain text could be faster.
Solution: Detect a plain text match and handle it specifically. Add
vim_regfree().
diff --git a/src/buffer.c b/src/buffer.c
index a46e30e..6e3fa55 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -1898,7 +1898,7 @@
#ifdef FEAT_SPELL
clear_string_option(&buf->b_s.b_p_spc);
clear_string_option(&buf->b_s.b_p_spf);
- vim_free(buf->b_s.b_cap_prog);
+ vim_regfree(buf->b_s.b_cap_prog);
buf->b_s.b_cap_prog = NULL;
clear_string_option(&buf->b_s.b_p_spl);
#endif
@@ -2246,7 +2246,7 @@
match = buf->b_fnum; /* remember first match */
}
- vim_free(prog);
+ vim_regfree(prog);
if (match >= 0) /* found one match */
break;
}
@@ -2355,14 +2355,14 @@
*file = (char_u **)alloc((unsigned)(count * sizeof(char_u *)));
if (*file == NULL)
{
- vim_free(prog);
+ vim_regfree(prog);
if (patc != pat)
vim_free(patc);
return FAIL;
}
}
}
- vim_free(prog);
+ vim_regfree(prog);
if (count) /* match(es) found, break here */
break;
}