aboutsummaryrefslogtreecommitdiff
path: root/src/expr.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2016-01-20 11:33:37 +0000
committerdrh <drh@noemail.net>2016-01-20 11:33:37 +0000
commit20f272c96f2b67c3a3fa6784dcf14a2d5439791e (patch)
tree7b39797e2f7a70fb8d331904f2a563c522a1aca3 /src/expr.c
parentcb75bff3f7fe12fd3d5dd94acd2832ef1e0dcb65 (diff)
parent5c3aa0517ed8a837e4d70cacbaca5d9e267e0fc3 (diff)
downloadsqlite-20f272c96f2b67c3a3fa6784dcf14a2d5439791e.tar.gz
sqlite-20f272c96f2b67c3a3fa6784dcf14a2d5439791e.zip
Merge recent enhancements from trunk.
FossilOrigin-Name: 327af5f644a49b2f41d5456958f9d61a2b704e1c
Diffstat (limited to 'src/expr.c')
-rw-r--r--src/expr.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/expr.c b/src/expr.c
index 3be3bf52d..403e81cf3 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -1135,10 +1135,11 @@ ExprList *sqlite3ExprListAppend(
){
sqlite3 *db = pParse->db;
if( pList==0 ){
- pList = sqlite3DbMallocZero(db, sizeof(ExprList) );
+ pList = sqlite3DbMallocRaw(db, sizeof(ExprList) );
if( pList==0 ){
goto no_mem;
}
+ pList->nExpr = 0;
pList->a = sqlite3DbMallocRaw(db, sizeof(pList->a[0]));
if( pList->a==0 ) goto no_mem;
}else if( (pList->nExpr & (pList->nExpr-1))==0 ){
@@ -2896,7 +2897,7 @@ int sqlite3ExprCodeTarget(Parse *pParse, Expr *pExpr, int target){
zId = pExpr->u.zToken;
nId = sqlite3Strlen30(zId);
pDef = sqlite3FindFunction(db, zId, nId, nFarg, enc, 0);
- if( pDef==0 || pDef->xFunc==0 ){
+ if( pDef==0 || pDef->xFinalize!=0 ){
sqlite3ErrorMsg(pParse, "unknown function: %.*s()", nId, zId);
break;
}