aboutsummaryrefslogtreecommitdiff
path: root/src/expr.c
diff options
context:
space:
mode:
authordrh <>2021-04-26 15:28:06 +0000
committerdrh <>2021-04-26 15:28:06 +0000
commit3c6edc8a11cc1eeebb98fb5a009e9ba773b237e2 (patch)
treed1c961dff2f0291e9e3dd7a232d497837c271e4b /src/expr.c
parent8ed8ddf759ea846e880880ba1c8089027af4bdc7 (diff)
downloadsqlite-3c6edc8a11cc1eeebb98fb5a009e9ba773b237e2.tar.gz
sqlite-3c6edc8a11cc1eeebb98fb5a009e9ba773b237e2.zip
More aggressive detection of OOM errors in resolveAlias().
dbsqlfuzz 7f96832c2ef7ee472022ed805b064e55e41094b2 FossilOrigin-Name: e99faf4f82746761c389e24db1b00ee94b9f849e7bcb29517fa0ca10290afc41
Diffstat (limited to 'src/expr.c')
-rw-r--r--src/expr.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/expr.c b/src/expr.c
index f40f16061..c869d762f 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -1324,6 +1324,7 @@ static Expr *exprDup(sqlite3 *db, Expr *p, int dupFlags, u8 **pzBuffer){
if( pzBuffer ){
zAlloc = *pzBuffer;
staticFlag = EP_Static;
+ assert( zAlloc!=0 );
}else{
zAlloc = sqlite3DbMallocRawNN(db, dupedExprSize(p, dupFlags));
staticFlag = 0;
@@ -2356,8 +2357,10 @@ int sqlite3ExprIsInteger(Expr *p, int *pValue){
*/
int sqlite3ExprCanBeNull(const Expr *p){
u8 op;
+ assert( p!=0 );
while( p->op==TK_UPLUS || p->op==TK_UMINUS ){
p = p->pLeft;
+ assert( p!=0 );
}
op = p->op;
if( op==TK_REGISTER ) op = p->op2;