From: drh Date: Mon, 26 Feb 2018 15:31:39 +0000 (+0000) Subject: Merge the fix for determining truth of floating point values from trunk. X-Git-Tag: version-3.23.0~101^2~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=bc8f68a3a05ab6e37127685177d2ca182688f60f;p=thirdparty%2Fsqlite.git Merge the fix for determining truth of floating point values from trunk. FossilOrigin-Name: 003dc140536d0dd4384252ae1b82827b5d8b2b399520f99549b9266a482009fb --- bc8f68a3a05ab6e37127685177d2ca182688f60f diff --cc manifest index 3417c2a6b1,007a40eb4c..afbeea2798 --- a/manifest +++ b/manifest @@@ -1,5 -1,5 +1,5 @@@ - C Experimental\simplementation\sof\sIS\sTRUE\sand\sIS\sFALSE\soperators.\s\sAll\sTRUE\sand\nFALSE\sto\sact\slike\sconstants\sif\sthe\snames\sdo\snot\sresolve\sto\sa\scolumn\sname. - D 2018-02-26T03:20:18.624 -C Always\sinterpret\snon-zero\sfloating-point\svalues\sas\strue\seven\sif\stheir\ninteger\spart\sis\szero.\s\sFix\sfor\sticket\s[36fae083b450e3af857a459e20]. -D 2018-02-26T15:27:31.204 ++C Merge\sthe\sfix\sfor\sdetermining\struth\sof\sfloating\spoint\svalues\sfrom\strunk. ++D 2018-02-26T15:31:39.919 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F Makefile.in a2d2fb8d17c39ab5ec52beb27850b903949080848236923f436156b72a958737 @@@ -557,9 -557,9 +557,9 @@@ F src/update.c a90a32ffc0100265b0693dbb F src/utf.c 810fbfebe12359f10bc2a011520a6e10879ab2a163bcb26c74768eab82ea62a5 F src/util.c d9eb0a6c4aae1b00a7369eadd7ca0bbe946cb4c953b6751aa20d357c2f482157 F src/vacuum.c 762ee9bbf8733d87d8cd06f58d950e881982e416f8c767334a40ffd341b6bff5 - F src/vdbe.c d221ab77e0997d410004d46cb373f3b848d994b64b439dc69db9d7d43b255397 -F src/vdbe.c bf51a88d09f3a3f22fec7e81fc5a1a6b72a7bc9a1863c8ab48d4983916e25fbd ++F src/vdbe.c 2d1338273ff6d6430c0d7b88afbd8f4683df0d23980ab1e638a6b490e9766e80 F src/vdbe.h 134beb7a12a6213c00eba58febaede33447cc4441bc568a0d9c144b33fc3720a - F src/vdbeInt.h 8d7d07f13cb3c4cbca91e22ba4a1920e542dda7c5d9299920432a0b3d5b009f5 + F src/vdbeInt.h 95f7adfdc5c8f1353321f55a6c5ec00a90877e3b85af5159e393afb41ff54110 F src/vdbeapi.c fea41171884a4de119f8b10ab514c788674eeeb7f27218bb6d008e1310bfd07f F src/vdbeaux.c 2756ac68ac259c416554100598fc291870063288cd7e1af22847f57b3e130e56 F src/vdbeblob.c f5c70f973ea3a9e915d1693278a5f890dc78594300cf4d54e64f2b0917c94191 @@@ -1707,10 -1707,7 +1707,7 @@@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a9 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 --P 15c587cf6ffc920dc37f67cacb4f0db6a603fb998a22a639f755387910516414 - R b02e960cb9fe764e3ce324741c78d420 - T *branch * is-true-operator - T *sym-is-true-operator * - T -sym-trunk * -R ff7cf472c64b844ed90baa6da5e6de1d ++P 40314bc999af08ab10e654241208842b4bb95b19858d11249444372250ea4160 a983fa857048c748112c2f805f13aadeae43b43b3d27fa55433a3699b51c9a0e ++R 38dbfe1b01398cfde35ddf8702196d69 U drh - Z 2f211764040206a38839d885e0d3c8ec -Z 4ad98123770e35c50780573ab58f9c3a ++Z bda364b06b801f317fc0151c8a36021e diff --cc manifest.uuid index 8ab9156881,48e20093ff..4d9aad0fd3 --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - 40314bc999af08ab10e654241208842b4bb95b19858d11249444372250ea4160 -a983fa857048c748112c2f805f13aadeae43b43b3d27fa55433a3699b51c9a0e ++003dc140536d0dd4384252ae1b82827b5d8b2b399520f99549b9266a482009fb diff --cc src/vdbe.c index 7115c8cf7d,b4c96b498f..61fc55e4de --- a/src/vdbe.c +++ b/src/vdbe.c @@@ -2211,10 -2201,10 +2201,10 @@@ case OP_Or: { /* same as TK case OP_Not: { /* same as TK_NOT, in1, out2 */ pIn1 = &aMem[pOp->p1]; pOut = &aMem[pOp->p2]; - sqlite3VdbeMemSetNull(pOut); if( (pIn1->flags & MEM_Null)==0 ){ - sqlite3VdbeMemSetInt64(pOut, !sqlite3VdbeIntValue(pIn1)); - pOut->flags = MEM_Int; - pOut->u.i = !sqlite3VdbeBooleanValue(pIn1, 0); ++ sqlite3VdbeMemSetInt64(pOut, !sqlite3VdbeBooleanValue(pIn1,0)); + }else{ + sqlite3VdbeMemSetNull(pOut); } break; }