aboutsummaryrefslogtreecommitdiff
path: root/src/expr.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2015-09-30 14:50:39 +0000
committerdrh <drh@noemail.net>2015-09-30 14:50:39 +0000
commit32af5eda6a6bd8afaad724fa61166ee92f935af5 (patch)
treeddf5f23f29daccf300fa9d0188a7a766dfcd560e /src/expr.c
parent9ec0efd946b8015f8b3ba3b726bc39f0b15d306c (diff)
parent105865acf9644a66cc73a84dde72937b83dd5315 (diff)
downloadsqlite-32af5eda6a6bd8afaad724fa61166ee92f935af5.tar.gz
sqlite-32af5eda6a6bd8afaad724fa61166ee92f935af5.zip
Merge recent enhancements from trunk, and especially the fix for
ticket [1b266395d6bc10]. FossilOrigin-Name: b2face9aa95ade96a5666c70b6b31064c1ad0977
Diffstat (limited to 'src/expr.c')
-rw-r--r--src/expr.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/expr.c b/src/expr.c
index 3141cd9db..b52e814f3 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -2443,15 +2443,15 @@ void sqlite3ExprCodeLoadIndexColumn(
int regOut /* Store the index column value in this register */
){
i16 iTabCol = pIdx->aiColumn[iIdxCol];
- if( iTabCol>=(-1) ){
+ if( iTabCol==XN_EXPR ){
+ assert( pIdx->aColExpr );
+ assert( pIdx->aColExpr->nExpr>iIdxCol );
+ pParse->iSelfTab = iTabCur;
+ sqlite3ExprCode(pParse, pIdx->aColExpr->a[iIdxCol].pExpr, regOut);
+ }else{
sqlite3ExprCodeGetColumnOfTable(pParse->pVdbe, pIdx->pTable, iTabCur,
iTabCol, regOut);
- return;
}
- assert( pIdx->aColExpr );
- assert( pIdx->aColExpr->nExpr>iIdxCol );
- pParse->iSelfTab = iTabCur;
- sqlite3ExprCode(pParse, pIdx->aColExpr->a[iIdxCol].pExpr, regOut);
}
/*