patch 8.1.0641: no check for out-of-memory when converting regexp
Problem: No check for out-of-memory when converting regexp.
Solution: Bail out when lalloc() returns NULL. (John Marriott)
diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c
index ff6215e..d779fee 100644
--- a/src/regexp_nfa.c
+++ b/src/regexp_nfa.c
@@ -3218,8 +3218,10 @@
if (nfa_calc_size == FALSE)
{
- /* Allocate space for the stack. Max states on the stack : nstate */
+ // Allocate space for the stack. Max states on the stack: "nstate'.
stack = (Frag_T *)lalloc((nstate + 1) * sizeof(Frag_T), TRUE);
+ if (stack == NULL)
+ return NULL;
stackp = stack;
stack_end = stack + (nstate + 1);
}
diff --git a/src/version.c b/src/version.c
index 10ba489..3150da9 100644
--- a/src/version.c
+++ b/src/version.c
@@ -800,6 +800,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 641,
+/**/
640,
/**/
639,