aboutsummaryrefslogtreecommitdiff
path: root/src/expr.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2008-06-26 21:45:26 +0000
committerdrh <drh@noemail.net>2008-06-26 21:45:26 +0000
commit3c31fc23b1780598404e6faa8852ac8b80ac0c49 (patch)
tree6c6ce46c4544a1e5aeef1f6dfbba2ae2f707824b /src/expr.c
parentecc31805da8f8a9d306516ec634d7a0853440d3b (diff)
downloadsqlite-3c31fc23b1780598404e6faa8852ac8b80ac0c49.tar.gz
sqlite-3c31fc23b1780598404e6faa8852ac8b80ac0c49.zip
Fix a bug introduced by check-in (5316). Add some VDBE comments to
the IN expression code generator. (CVS 5317) FossilOrigin-Name: 1043a605e2dcad4b5222674efe392ee9915dc57d
Diffstat (limited to 'src/expr.c')
-rw-r--r--src/expr.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/expr.c b/src/expr.c
index 58a714916..cb78adabd 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -12,7 +12,7 @@
** This file contains routines used for analyzing expressions and
** for generating VDBE code that evaluates expressions in SQLite.
**
-** $Id: expr.c,v 1.378 2008/06/26 20:06:07 drh Exp $
+** $Id: expr.c,v 1.379 2008/06/26 21:45:26 drh Exp $
*/
#include "sqliteInt.h"
#include <ctype.h>
@@ -1936,7 +1936,7 @@ void sqlite3CodeSubselect(Parse *pParse, Expr *pExpr, int rMayHaveNull){
assert( pParse->disableColCache>0 );
pParse->disableColCache--;
sqlite3VdbeAddOp4(v, OP_MakeRecord, r3, 1, r2, &affinity, 1);
- sqlite3ExprCacheAffinityChange(pParse, r1, 1);
+ sqlite3ExprCacheAffinityChange(pParse, r3, 1);
sqlite3VdbeAddOp2(v, OP_IdxInsert, pExpr->iTable, r2);
}
sqlite3ReleaseTempReg(pParse, r1);
@@ -2582,6 +2582,7 @@ int sqlite3ExprCodeTarget(Parse *pParse, Expr *pExpr, int target){
char affinity;
int eType;
+ VdbeNoopComment((v, "begin IN expr r%d", target));
eType = sqlite3FindInIndex(pParse, pExpr, &rMayHaveNull);
if( rMayHaveNull ){
rNotFound = ++pParse->nMem;
@@ -2661,6 +2662,7 @@ int sqlite3ExprCodeTarget(Parse *pParse, Expr *pExpr, int target){
}
sqlite3VdbeJumpHere(v, j2);
sqlite3VdbeJumpHere(v, j5);
+ VdbeComment((v, "end IN expr r%d", target));
break;
}
#endif