summaryrefslogtreecommitdiff
path: root/test/fts3ao.test
diff options
context:
space:
mode:
authorHans-Christoph Steiner <hans@eds.org>2014-10-16 22:51:35 -0400
committerHans-Christoph Steiner <hans@eds.org>2014-10-16 22:51:35 -0400
commit569c6676a6ddb0ff73821d7693b5e18ddef809b9 (patch)
tree833538da7bba39105daff45e265aef386a200acd /test/fts3ao.test
parent08119c361d1181b3e8f1abb429236e488a664753 (diff)
Imported Upstream version 3.2.0upstream
Diffstat (limited to 'test/fts3ao.test')
-rw-r--r--test/fts3ao.test29
1 files changed, 28 insertions, 1 deletions
diff --git a/test/fts3ao.test b/test/fts3ao.test
index 786667a..60f0aa7 100644
--- a/test/fts3ao.test
+++ b/test/fts3ao.test
@@ -219,5 +219,32 @@ do_execsql_test 5.2 {
SELECT count(*) FROM sqlite_master WHERE name LIKE 't8%';
} {0 6}
-finish_test
+# At one point this was causing a memory leak.
+#
+foreach {tn sql} {
+ 1 {}
+ 2 { INSERT INTO ft(ft) VALUES('merge=2,2'); }
+} {
+ reset_db
+ do_execsql_test 6.$tn.1 "
+ CREATE TABLE t1(x);
+ CREATE VIRTUAL TABLE ft USING fts3;
+ INSERT INTO ft VALUES('hello world');
+ $sql
+ "
+
+ db close
+ sqlite3 db test.db
+ do_execsql_test 6.$tn.2 { SELECT * FROM t1 } {}
+
+ do_test 6.$tn.3 {
+ sqlite3 db2 test.db
+ db2 eval { DROP TABLE t1 }
+ db2 close
+ set stmt [sqlite3_prepare db { SELECT * FROM ft } -1 dummy]
+ sqlite3_finalize $stmt
+ } {SQLITE_OK}
+ db close
+}
+finish_test