From: drh Date: Tue, 9 Oct 2012 18:51:44 +0000 (+0000) Subject: Attempt to suppress warnings generated by Coverity. X-Git-Tag: version-3.7.15~78 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5a05be1b684ce17ef0a1d3d6dc27d46bcc2ec1ff;p=thirdparty%2Fsqlite.git Attempt to suppress warnings generated by Coverity. FossilOrigin-Name: 7b1a6e6cb5099076bf19db142b17c99044a869cd --- diff --git a/manifest b/manifest index 820f87d17f..0b61c23998 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Avoid\san\sassertion\sfault\sand/or\sfreeing\smemory\swhile\sit\sis\sstill\sin\suse\swhen\nan\serror\soccurs\sduring\svirtual\stable\sconstruction. -D 2012-10-09T14:36:47.262 +C Attempt\sto\ssuppress\swarnings\sgenerated\sby\sCoverity. +D 2012-10-09T18:51:44.830 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 5f4f26109f9d80829122e0e09f9cda008fa065fb F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -124,7 +124,7 @@ F src/btmutex.c 976f45a12e37293e32cae0281b15a21d48a8aaa7 F src/btree.c 14de53ebb334633ee632ab3c5b9262cfe7cbe455 F src/btree.h 078f76b28c338ab6eb6dd7324d63ee54463aeb6c F src/btreeInt.h 4e5c2bd0f9b36b2a815a6d84f771a61a65830621 -F src/build.c b21c130017820dfe8721e380325e128fd0c6e019 +F src/build.c f35dac52924a6e8e6346a90f0c195a84e28b6f21 F src/callback.c d7e46f40c3cf53c43550b7da7a1d0479910b62cc F src/complete.c dc1d136c0feee03c2f7550bafc0d29075e36deac F src/ctime.c 72a70dcfda75d3a1f81041ce4573e7afddcd8e4e @@ -141,7 +141,7 @@ F src/hwtime.h d32741c8f4df852c7d959236615444e2b1063b08 F src/insert.c ad0d8943d2a4f0b52ebf75b9e459f2da00117dbd F src/journal.c 552839e54d1bf76fb8f7abe51868b66acacf6a0e F src/legacy.c a199d7683d60cef73089e892409113e69c23a99f -F src/lempar.c 0ee69fca0be54cd93939df98d2aca4ca46f44416 +F src/lempar.c cdf0a000315332fc9b50b62f3b5e22e080a0952b F src/loadext.c f20382fbaeec832438a1ba7797bee3d3c8a6d51d F src/main.c ca6784455f3207524b82d24141676d641d44f137 F src/malloc.c fe085aa851b666b7c375c1ff957643dc20a04bf6 @@ -160,7 +160,7 @@ F src/notify.c 976dd0f6171d4588e89e874fcc765e92914b6d30 F src/os.c e1acdc09ff3ac2412945cca9766e2dcf4675f31c F src/os.h 027491c77d2404c0a678bb3fb06286f331eb9b57 F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04 -F src/os_unix.c a5a45a2857c43b37bac145b521064a85a544cd7a +F src/os_unix.c 0d3a39dd576c9f384fd7772a2dadc67b144c6ce7 F src/os_win.c 28bd027791252a4012dffd4d64355a1eb84d761c F src/pager.c a7ad8c38809edf0be545e8f52da5bcbb88885b38 F src/pager.h bdbc379557eb2e233dfec10986b3086877e72db7 @@ -168,11 +168,11 @@ F src/parse.y f29df90bd3adc64b33114ab1de9fb7768fcf2099 F src/pcache.c f8043b433a57aba85384a531e3937a804432a346 F src/pcache.h 1b5dcc3dc8103d03e625b177023ee67764fa6b7c F src/pcache1.c 9fd22671c270b35131ef480bbc00392b8b5f8ab9 -F src/pragma.c 4f31fe4ae4b885a8be8b1db9d94f9f5b6c8b5624 +F src/pragma.c 015723c48072781d2740e310ab04dc92956b76d1 F src/prepare.c 931ad0d852a0df48f79adcba6ce79ca5f475625c F src/printf.c 4a9f882f1c1787a8b494a2987765acf9d97ac21f F src/random.c cd4a67b3953b88019f8cd4ccd81394a8ddfaba50 -F src/resolve.c 9e28280ec98035f31900fdd1db01f86f68ca6c32 +F src/resolve.c 7b986a715ac281643309c29257bb58cfae7aa810 F src/rowset.c 64655f1a627c9c212d9ab497899e7424a34222e0 F src/select.c 2a82736faeca1fe93315eda20c691d68ec13bb6c F src/shell.c 8ee5a3cb502e2d574f97b43972e6c1e275e7bec7 @@ -1019,7 +1019,7 @@ F tool/vdbe-compress.tcl f12c884766bd14277f4fcedcae07078011717381 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P bb5c0f1c92b48631d4a12cd4f321b53cd07885c8 -R a8d4530b0140a5399b6136d03ddec9af +P a02599ad85d02470c9effa51c02dbda7796bfa16 +R 9480dab5684a400f63b19ccf9c583f10 U drh -Z a4f133ff7d13d53e026b03f59090cbe2 +Z 614c1f0e342f1a34e9d72c6839c7e21a diff --git a/manifest.uuid b/manifest.uuid index a002cb666a..25c67cdb43 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -a02599ad85d02470c9effa51c02dbda7796bfa16 \ No newline at end of file +7b1a6e6cb5099076bf19db142b17c99044a869cd \ No newline at end of file diff --git a/src/build.c b/src/build.c index 00ff705f77..4c45a92727 100644 --- a/src/build.c +++ b/src/build.c @@ -2019,6 +2019,7 @@ static void destroyTable(Parse *pParse, Table *pTab){ return; }else{ int iDb = sqlite3SchemaToIndex(pParse->db, pTab->pSchema); + assert( iDb>=0 && iDbdb->nDb ); destroyRootPage(pParse, iLargest, iDb); iDestroyed = iLargest; } diff --git a/src/lempar.c b/src/lempar.c index cb6025e87b..2afaa6cea6 100644 --- a/src/lempar.c +++ b/src/lempar.c @@ -608,6 +608,7 @@ static void yy_reduce( */ %% }; + assert( yyruleno>=0 && yyrulenoyyidx -= yysize; diff --git a/src/os_unix.c b/src/os_unix.c index 0852eb1a89..5fbac00713 100644 --- a/src/os_unix.c +++ b/src/os_unix.c @@ -2086,13 +2086,13 @@ static int dotlockUnlock(sqlite3_file *id, int eFileLock) { ** Close a file. Make sure the lock has been released before closing. */ static int dotlockClose(sqlite3_file *id) { - int rc; + int rc = SQLITE_OK; if( id ){ unixFile *pFile = (unixFile*)id; dotlockUnlock(id, NO_LOCK); sqlite3_free(pFile->lockingContext); + rc = closeUnixFile(id); } - rc = closeUnixFile(id); return rc; } /****************** End of the dot-file lock implementation ******************* @@ -2296,10 +2296,12 @@ static int flockUnlock(sqlite3_file *id, int eFileLock) { ** Close a file. */ static int flockClose(sqlite3_file *id) { + int rc = SQLITE_OK; if( id ){ flockUnlock(id, NO_LOCK); + rc = closeUnixFile(id); } - return closeUnixFile(id); + return rc; } #endif /* SQLITE_ENABLE_LOCKING_STYLE && !OS_VXWORK */ @@ -4098,7 +4100,7 @@ static int unixShmMap( if( pShmNode->h>=0 ){ pMem = mmap(0, szRegion, pShmNode->isReadonly ? PROT_READ : PROT_READ|PROT_WRITE, - MAP_SHARED, pShmNode->h, pShmNode->nRegion*szRegion + MAP_SHARED, pShmNode->h, szRegion*(i64)pShmNode->nRegion ); if( pMem==MAP_FAILED ){ rc = unixLogError(SQLITE_IOERR_SHMMAP, "mmap", pShmNode->zFilename); diff --git a/src/pragma.c b/src/pragma.c index 8eaec51ec3..d3061b234f 100644 --- a/src/pragma.c +++ b/src/pragma.c @@ -1569,13 +1569,12 @@ void sqlite3Pragma( sqlite3VdbeSetColName(v, 1, COLNAME_NAME, "status", SQLITE_STATIC); for(i=0; inDb; i++){ Btree *pBt; - Pager *pPager; const char *zState = "unknown"; int j; if( db->aDb[i].zName==0 ) continue; sqlite3VdbeAddOp4(v, OP_String8, 0, 1, 0, db->aDb[i].zName, P4_STATIC); pBt = db->aDb[i].pBt; - if( pBt==0 || (pPager = sqlite3BtreePager(pBt))==0 ){ + if( pBt==0 || sqlite3BtreePager(pBt)==0 ){ zState = "closed"; }else if( sqlite3_file_control(db, i ? db->aDb[i].zName : 0, SQLITE_FCNTL_LOCKSTATE, &j)==SQLITE_OK ){ diff --git a/src/resolve.c b/src/resolve.c index b87d231ac2..0ffc633558 100644 --- a/src/resolve.c +++ b/src/resolve.c @@ -195,7 +195,7 @@ static int lookupName( assert( pNC ); /* the name context cannot be NULL. */ assert( zCol ); /* The Z in X.Y.Z cannot be NULL */ - assert( ~ExprHasAnyProperty(pExpr, EP_TokenOnly|EP_Reduced) ); + assert( !ExprHasAnyProperty(pExpr, EP_TokenOnly|EP_Reduced) ); /* Initialize the node to no-match */ pExpr->iTable = -1;