Index: third_party/sqlite/src/test/misc5.test |
diff --git a/third_party/sqlite/src/test/misc5.test b/third_party/sqlite/src/test/misc5.test |
index 14ba44ead0a1d239c2e81c5bcfa0e02416b28222..30176b80824ff33f1f0e0d7e292a09c6b02dcb82 100644 |
--- a/third_party/sqlite/src/test/misc5.test |
+++ b/third_party/sqlite/src/test/misc5.test |
@@ -583,6 +583,24 @@ do_test misc5-7.1 { |
catchsql $sql |
} {1 {parser stack overflow}} |
+# Parser stack overflow is silently ignored when it occurs while parsing the |
+# schema and PRAGMA writable_schema is turned on. |
+# |
+do_test misc5-7.2 { |
+ sqlite3 db2 :memory: |
+ catchsql { |
+ CREATE TABLE t1(x UNIQUE); |
+ PRAGMA writable_schema=ON; |
+ UPDATE sqlite_master SET sql='CREATE table t(o CHECK(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((;VALUES(o)'; |
+ BEGIN; |
+ CREATE TABLE t2(y); |
+ ROLLBACK; |
+ DROP TABLE IF EXISTS D; |
+ } db2 |
+} {0 {}} |
+db2 close |
+ |
+ |
# Ticket #1911 |
# |
ifcapable compound { |