diff options
Diffstat (limited to 'src/wherecode.c')
-rw-r--r-- | src/wherecode.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/wherecode.c b/src/wherecode.c index ece0332e5..f2f2c23de 100644 --- a/src/wherecode.c +++ b/src/wherecode.c @@ -608,7 +608,12 @@ static int codeEqualityTerm( pIn++; } } - if( iEq>0 && (pLoop->wsFlags & WHERE_IN_SEEKSCAN)==0 ){ + testcase( iEq>0 + && (pLoop->wsFlags & WHERE_IN_SEEKSCAN)==0 + && (pLoop->wsFlags & WHERE_VIRTUALTABLE)!=0 ); + if( iEq>0 + && (pLoop->wsFlags & (WHERE_IN_SEEKSCAN|WHERE_VIRTUALTABLE))==0 + ){ sqlite3VdbeAddOp3(v, OP_SeekHit, pLevel->iIdxCur, 0, iEq); } }else{ |