Handle parser stack overflow when parsing fts5 query expressions. Fix some compiler warnings in fts5 code.

FossilOrigin-Name: bc3f7900d5a06829d123814a5ac7b951bcfc1560
This commit is contained in:
dan
2016-02-11 17:01:32 +00:00
parent df3a907ecc
commit 22e8356368
12 changed files with 129 additions and 89 deletions
+7 -4
View File
@@ -362,11 +362,12 @@ static int fts5StorageInsertCallback(
int tflags,
const char *pToken, /* Buffer containing token */
int nToken, /* Size of token in bytes */
int iStart, /* Start offset of token */
int iEnd /* End offset of token */
int iUnused1, /* Start offset of token */
int iUnused2 /* End offset of token */
){
Fts5InsertCtx *pCtx = (Fts5InsertCtx*)pContext;
Fts5Index *pIdx = pCtx->pStorage->pIndex;
UNUSED_PARAM2(iUnused1, iUnused2);
if( (tflags & FTS5_TOKEN_COLOCATED)==0 || pCtx->szCol==0 ){
pCtx->szCol++;
}
@@ -797,8 +798,8 @@ static int fts5StorageIntegrityCallback(
int tflags,
const char *pToken, /* Buffer containing token */
int nToken, /* Size of token in bytes */
int iStart, /* Start offset of token */
int iEnd /* End offset of token */
int iUnused1, /* Start offset of token */
int iUnused2 /* End offset of token */
){
Fts5IntegrityCtx *pCtx = (Fts5IntegrityCtx*)pContext;
Fts5Termset *pTermset = pCtx->pTermset;
@@ -808,6 +809,8 @@ static int fts5StorageIntegrityCallback(
int iPos;
int iCol;
UNUSED_PARAM2(iUnused1, iUnused2);
if( (tflags & FTS5_TOKEN_COLOCATED)==0 || pCtx->szCol==0 ){
pCtx->szCol++;
}