forked from pool/sqlite3
Fix failing Django/Django1 testsuites Fix some more errors OBS-URL: https://build.opensuse.org/request/show/765315 OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=236
24 lines
607 B
Diff
24 lines
607 B
Diff
Index: src/expr.c
|
|
==================================================================
|
|
--- src/expr.c
|
|
+++ src/expr.c
|
|
@@ -5229,12 +5229,16 @@
|
|
** ordinary join.
|
|
*/
|
|
int sqlite3ExprImpliesNonNullRow(Expr *p, int iTab){
|
|
Walker w;
|
|
p = sqlite3ExprSkipCollateAndLikely(p);
|
|
- if( p && p->op==TK_NOTNULL ){
|
|
+ if( p==0 ) return 0;
|
|
+ if( p->op==TK_NOTNULL ){
|
|
p = p->pLeft;
|
|
+ }else if( p->op==TK_AND ){
|
|
+ if( sqlite3ExprImpliesNonNullRow(p->pLeft, iTab) ) return 1;
|
|
+ p = p->pRight;
|
|
}
|
|
w.xExprCallback = impliesNotNullRow;
|
|
w.xSelectCallback = 0;
|
|
w.xSelectCallback2 = 0;
|
|
w.eCode = 0;
|
|
|