Fix a memory leak in fts3 that can occur in an OOM condition.

FossilOrigin-Name: 507027b70f71689f77dee3e849ebc66a1c4c3166
This commit is contained in:
dan
2010-12-04 18:20:18 +00:00
parent ea76f55562
commit 014153f092
3 changed files with 16 additions and 20 deletions
+8 -2
View File
@@ -2683,8 +2683,13 @@ static int fts3EvalExpr(
}
}
*paOut = aRet;
*pnOut = nRet;
if( rc==SQLITE_OK ){
*paOut = aRet;
*pnOut = nRet;
}else{
assert( *paOut==0 );
sqlite3_free(aRet);
}
sqlite3_free(aExpr);
fts3ExprFreeSegReaders(pExpr);
@@ -2757,6 +2762,7 @@ static int fts3EvalExpr(
}
}
assert( rc==SQLITE_OK || *paOut==0 );
return rc;
}