]> git.ipfire.org Git - thirdparty/sqlite.git/commit
Defer deletion of expressions that are optimized out by the AND optimizer
authordrh <>
Wed, 31 Mar 2021 13:31:33 +0000 (13:31 +0000)
committerdrh <>
Wed, 31 Mar 2021 13:31:33 +0000 (13:31 +0000)
commitb3ad4e611854dd5f4ad26378c4cfccf9f0c858dd
tree90a34dd0350c25af32bd33caca8e8d8edcdb42b6
parentb03786ad6e89e1b38d94dfe9ca48aee921a97196
Defer deletion of expressions that are optimized out by the AND optimizer
in the sqlite3ExprAnd() routine until the corresponding Parse object is
deleted.  This avoids a dangling pointer in AggInfo if sqlite3ExprAnd()
is invoked by the push-down optimization.  The dangling pointer appears
to be harmless in release builds, only showing up in debug builds.
Problem found by dbsqlfuzz.

FossilOrigin-Name: c36b43589abd9f62a709bdb47b8748e0c1e8743487a3d83d1eb35eb06b65d763
manifest
manifest.uuid
src/expr.c
src/sqliteInt.h
test/select4.test