Argh. I overlooked the constructor and destructor.
Change-Id: I3ceb50c46beda7152074329cdb0899b2c973f3f4
Reviewed-on: https://code-review.googlesource.com/c/re2/+/56482
Reviewed-by: Paul Wankadia <junyer@google.com>
diff --git a/re2/nfa.cc b/re2/nfa.cc
index 6564757..3959a78 100644
--- a/re2/nfa.cc
+++ b/re2/nfa.cc
@@ -144,13 +144,16 @@
prog_->inst_count(kInstNop) + 1; // + 1 for start inst
stack_ = PODArray<AddState>(nstack);
free_threads_ = NULL;
+ match_ = NULL;
matched_ = false;
}
NFA::~NFA() {
+ delete[] match_;
Thread* next;
for (Thread* t = free_threads_; t; t = next) {
next = t->next;
+ delete[] t->capture;
delete t;
}
}