From: drh Date: Tue, 11 Nov 2008 00:36:16 +0000 (+0000) Subject: When an assignment occurs in a boolean, always test the result using "!=0" X-Git-Tag: version-3.6.10~298 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4d01aeedbb98ecd7cf2384c025fe8608ad351494;p=thirdparty%2Fsqlite.git When an assignment occurs in a boolean, always test the result using "!=0" to avoid confusion and make it clear that assignment is intended, not an equality test. Ticket #3491. (CVS 5879) FossilOrigin-Name: 89ee5295bdea6f2c093eb6a44d69917dcc8459e3 --- diff --git a/manifest b/manifest index 6c920c7bac..b0e0eb2455 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sthe\sCLI\sso\sthat\sit\sdoes\snot\sterminate\sinput\swhen\san\sOracle\sor\sMS-SQL\ncommand\sterminator\smark\sis\sseen\sin\sthe\smiddle\sof\sa\sstring\sliteral.\nTicket\s#3490.\s(CVS\s5878) -D 2008-11-11T00:30:12 +C When\san\sassignment\soccurs\sin\sa\sboolean,\salways\stest\sthe\sresult\susing\s"!=0"\nto\savoid\sconfusion\sand\smake\sit\sclear\sthat\sassignment\sis\sintended,\snot\nan\sequality\stest.\s\sTicket\s#3491.\s(CVS\s5879) +D 2008-11-11T00:36:17 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0 F Makefile.in 48172b58e444a9725ec482e0c022a564749acab4 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654 @@ -141,7 +141,7 @@ F src/os_win.c e208cbbceac63c1dd881d0909de5a4679a2c6992 F src/pager.c 6b6f8eb4938d184d6612ea89631185dbace246b3 F src/pager.h 4a57b219c0765fe1870238064e3f46e4eb2cf5af F src/parse.y 2c4758b4c5ead6de8cf7112f5a7cce7561d313fe -F src/pcache.c 5b80676e664019c1ebc8356cc25332dd69da6269 +F src/pcache.c 81ded3368436eef000730399db67d986aba5d29b F src/pcache.h 2caf2deb6cbaa75c423b8b96fc1411069ee77c75 F src/pragma.c 5d4333a27ef4f770fc69ca4f138419d3b462c554 F src/prepare.c ae49b8298eca79acdbc964679962e089b943ec94 @@ -654,7 +654,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81 F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e -P 7b9c9b35fffb233e76148182426199d51243fba7 -R c81008349e7f2ff2bbba5c47baedbce9 +P 68662e3b487b80b2c94cd2376060388bd8df0e4e +R b04d26c0566a4afedd114219da887cda U drh -Z ed387cb6e57045ecd55977a2a2952399 +Z 782796680fc46f31d4a79a9bb86892f0 diff --git a/manifest.uuid b/manifest.uuid index a265a5db7c..1ea9127c41 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -68662e3b487b80b2c94cd2376060388bd8df0e4e \ No newline at end of file +89ee5295bdea6f2c093eb6a44d69917dcc8459e3 \ No newline at end of file diff --git a/src/pcache.c b/src/pcache.c index a3a1d50577..5e3659faf7 100644 --- a/src/pcache.c +++ b/src/pcache.c @@ -11,7 +11,7 @@ ************************************************************************* ** This file implements that page cache. ** -** @(#) $Id: pcache.c,v 1.34 2008/10/17 18:51:53 danielk1977 Exp $ +** @(#) $Id: pcache.c,v 1.35 2008/11/11 00:36:17 drh Exp $ */ #include "sqliteInt.h" @@ -524,7 +524,7 @@ static PgHdr *pcacheRecyclePage(void){ PgHdr *p = 0; assert( sqlite3_mutex_held(pcache_g.mutex) ); - if( (p=pcache_g.pLruTail) ){ + if( (p=pcache_g.pLruTail)!=0 ){ assert( (p->flags&PGHDR_DIRTY)==0 ); pcacheRemoveFromLruList(p); pcacheRemoveFromHash(p); @@ -940,7 +940,8 @@ void sqlite3PcacheTruncate(PCache *pCache, Pgno pgno){ static void pcacheEnforceMaxPage(void){ PgHdr *p; assert( sqlite3_mutex_held(pcache_g.mutex) ); - while( pcache_g.nCurrentPage>pcache_g.nMaxPage && (p = pcacheRecyclePage()) ){ + while( pcache_g.nCurrentPage>pcache_g.nMaxPage + && (p = pcacheRecyclePage())!=0 ){ pcachePageFree(p); } }