From 7ccf33dc1b593450c4e87320e8d296d66816fd03 Mon Sep 17 00:00:00 2001 From: cxl Date: Mon, 26 Apr 2010 13:52:21 +0000 Subject: [PATCH] *Sql: Fixed operator||(SqlBool, SqlBool) if either of operands is empty or true git-svn-id: svn://ultimatepp.org/upp/trunk@2343 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- uppsrc/Sql/SqlBool.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/uppsrc/Sql/SqlBool.cpp b/uppsrc/Sql/SqlBool.cpp index 773af901d..baa6f4239 100644 --- a/uppsrc/Sql/SqlBool.cpp +++ b/uppsrc/Sql/SqlBool.cpp @@ -50,9 +50,9 @@ SqlBool operator!=(const SqlVal& a, const SqlVal& b) { } SqlBool operator&&(const SqlBool& a, const SqlBool& b) { + if(a.IsFalse() || b.IsFalse()) return false; if(a.IsEmpty() || a.IsTrue()) return b; if(b.IsEmpty() || b.IsTrue()) return a; - if(a.IsFalse() || b.IsFalse()) return false; return SqlBool(a, " and ", b, SqlS::LAND); } @@ -63,9 +63,9 @@ SqlBool operator- (const SqlBool& a, const SqlBool& b) { } SqlBool operator||(const SqlBool& a, const SqlBool& b) { - if(a.IsEmpty() || a.IsFalse()) return b; - if(b.IsEmpty() || b.IsFalse()) return a; - if(a.IsTrue() || b.IsTrue()) return true; + if(a.IsTrue() || a.IsEmpty() || b.IsTrue() || b.IsEmpty()) return true; + if(a.IsFalse()) return b; + if(b.IsFalse()) return a; return SqlBool(a, " or ", b, SqlS::LOR); }