diff options
author | drh <drh@noemail.net> | 2015-12-21 15:22:13 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2015-12-21 15:22:13 +0000 |
commit | 1c75c9d7f16f5852c012f5fc8fce00840f72b308 (patch) | |
tree | 47b38ab1632e6fecba4b39646e301e8cd951ad32 /src/insert.c | |
parent | d319b8c1438de286caa9a2aa74938bb788430111 (diff) | |
download | sqlite-1c75c9d7f16f5852c012f5fc8fce00840f72b308.tar.gz sqlite-1c75c9d7f16f5852c012f5fc8fce00840f72b308.zip |
Ensure that the Expr objects that describe indexed expressions are not modified
by code generation. Fix for an assert() problem found by Jon Metzman using AFL.
FossilOrigin-Name: 34073ce87d88a02313217023ae92e15939192cd9
Diffstat (limited to 'src/insert.c')
-rw-r--r-- | src/insert.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/insert.c b/src/insert.c index 52769e9c4..7ac2a2559 100644 --- a/src/insert.c +++ b/src/insert.c @@ -1408,7 +1408,7 @@ void sqlite3GenerateConstraintChecks( int x; if( iField==XN_EXPR ){ pParse->ckBase = regNewData+1; - sqlite3ExprCode(pParse, pIdx->aColExpr->a[i].pExpr, regIdx+i); + sqlite3ExprCodeCopy(pParse, pIdx->aColExpr->a[i].pExpr, regIdx+i); pParse->ckBase = 0; VdbeComment((v, "%s column %d", pIdx->zName, i)); }else{ |