summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Bremner <david@tethera.net>2022-01-09 10:38:05 -0400
committerDavid Bremner <david@tethera.net>2022-01-22 21:14:29 -0400
commit2786aa4d548d28579c761e9358d44c84dfb29068 (patch)
tree955e2e8b65e52e3a93f0d6fa410a77203c276f21
parentdf7c5acd759f22fcb537490f62b85d39aa71d677 (diff)
lib/database: delete stemmer on destroy
Commit [0] left the stemmer object accessible, but did not add de-allocation code to notmuch_database_destroy. This commit corrects that oversight. Leak originally reported by Austin Ray [1]. [0]: 3202e0d1feba1ab955ba1c07098c00208f8f0ada [1]: id:20220105224538.m36lnjn7rf3ieonc@athena
-rw-r--r--lib/database.cc2
-rwxr-xr-xtest/T800-asan.sh1
2 files changed, 2 insertions, 1 deletions
diff --git a/lib/database.cc b/lib/database.cc
index 0effe978..df83e204 100644
--- a/lib/database.cc
+++ b/lib/database.cc
@@ -755,6 +755,8 @@ notmuch_database_destroy (notmuch_database_t *notmuch)
notmuch->date_range_processor = NULL;
delete notmuch->last_mod_range_processor;
notmuch->last_mod_range_processor = NULL;
+ delete notmuch->stemmer;
+ notmuch->stemmer = NULL;
talloc_free (notmuch);
diff --git a/test/T800-asan.sh b/test/T800-asan.sh
index 8c294578..8607732e 100755
--- a/test/T800-asan.sh
+++ b/test/T800-asan.sh
@@ -12,7 +12,6 @@ add_email_corpus
TEST_CFLAGS="-fsanitize=address"
test_begin_subtest "open and destroy"
-test_subtest_known_broken
test_C ${MAIL_DIR} ${NOTMUCH_CONFIG} <<EOF
#include <notmuch.h>
#include <stdio.h>