aboutsummaryrefslogtreecommitdiff
path: root/src/wherecode.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2020-01-12 22:38:17 +0000
committerdrh <drh@noemail.net>2020-01-12 22:38:17 +0000
commit3b8eb08b17cbf37c1d6da01bd7eaabc243158396 (patch)
treea0127ffa11a04d0f489b4acb8081c6a7ffa7541e /src/wherecode.c
parentd8df36bd4e7828619437e7d6eb2bbd622cb8ebad (diff)
downloadsqlite-3b8eb08b17cbf37c1d6da01bd7eaabc243158396.tar.gz
sqlite-3b8eb08b17cbf37c1d6da01bd7eaabc243158396.zip
Better than removing the incorrect assert() is to change it into a
testcase() together with a comment indicating where an appropriate test case can be found, and the ticket that provoked the change. Ticket [614b25314c766238] FossilOrigin-Name: 3e3c60d8124672ff72a57dfa2e51276316bcac8c8ae8a5739da358f26924b0fb
Diffstat (limited to 'src/wherecode.c')
-rw-r--r--src/wherecode.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/wherecode.c b/src/wherecode.c
index 251695faf..0014a695d 100644
--- a/src/wherecode.c
+++ b/src/wherecode.c
@@ -2150,6 +2150,9 @@ Bitmask sqlite3WhereCodeOneLoopStart(
WhereInfo *pSubWInfo; /* Info for single OR-term scan */
Expr *pOrExpr = pOrTerm->pExpr; /* Current OR clause term */
int jmp1 = 0; /* Address of jump operation */
+ testcase( (pTabItem[0].fg.jointype & JT_LEFT)!=0
+ && !ExprHasProperty(pOrExpr, EP_FromJoin)
+ ); /* See TH3 vtab25.400 and ticket 614b25314c766238 */
if( pAndExpr ){
pAndExpr->pLeft = pOrExpr;
pOrExpr = pAndExpr;