Index: third_party/sqlite/src/ext/fts3/fts3Int.h |
diff --git a/third_party/sqlite/src/ext/fts3/fts3Int.h b/third_party/sqlite/src/ext/fts3/fts3Int.h |
index 06bcc7202e10092d0bfb3b303430b88bd5ba54e1..c3cab9d821a435efab8dbd90019362fe3f5d8862 100644 |
--- a/third_party/sqlite/src/ext/fts3/fts3Int.h |
+++ b/third_party/sqlite/src/ext/fts3/fts3Int.h |
@@ -18,6 +18,12 @@ |
# define NDEBUG 1 |
#endif |
+/* FTS3/FTS4 require virtual tables */ |
+#ifdef SQLITE_OMIT_VIRTUALTABLE |
+# undef SQLITE_ENABLE_FTS3 |
+# undef SQLITE_ENABLE_FTS4 |
+#endif |
+ |
/* |
** FTS4 is really an extension for FTS3. It is enabled using the |
** SQLITE_ENABLE_FTS3 macro. But to avoid confusion we also all |
@@ -224,6 +230,7 @@ struct Fts3Table { |
** statements is run and reset within a single virtual table API call. |
*/ |
sqlite3_stmt *aStmt[40]; |
+ sqlite3_stmt *pSeekStmt; /* Cache for fts3CursorSeekStmt() */ |
char *zReadExprlist; |
char *zWriteExprlist; |
@@ -293,6 +300,7 @@ struct Fts3Cursor { |
i16 eSearch; /* Search strategy (see below) */ |
u8 isEof; /* True if at End Of Results */ |
u8 isRequireSeek; /* True if must seek pStmt to %_content row */ |
+ u8 bSeekStmt; /* True if pStmt is a seek */ |
sqlite3_stmt *pStmt; /* Prepared statement in use by the cursor */ |
Fts3Expr *pExpr; /* Parsed MATCH query string */ |
int iLangid; /* Language being queried for */ |