]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix various harmless scan-build warnings.
authordrh <>
Tue, 24 Oct 2023 11:06:44 +0000 (11:06 +0000)
committerdrh <>
Tue, 24 Oct 2023 11:06:44 +0000 (11:06 +0000)
FossilOrigin-Name: 54be9af4469d7e31ee852f67e5aa32996557c10de654a60103fd165d2fedf311

ext/expert/sqlite3expert.c
ext/fts3/fts3_write.c
ext/session/sqlite3session.c
manifest
manifest.uuid
src/btree.c

index 861cc869a8205e31e37bb3bdf2911ebcb2ea4b90..33d62226f02da3c890f83d596f1f0c2f21fd7d38 100644 (file)
@@ -1870,8 +1870,9 @@ int registerUDFs(sqlite3 *dbSrc, sqlite3 *dbDst){
       const char *name = (char*)sqlite3_column_text(pStmt,0);
       const char *type = (char*)sqlite3_column_text(pStmt,1);
       const char *enc = (char*)sqlite3_column_text(pStmt,2);
-      if( name==0 || type==0 || enc==0 ) rc = SQLITE_NOMEM;
-      else{
+      if( name==0 || type==0 || enc==0 ){
+        /* no-op.  Only happens on OOM */
+      }else{
         int ienc = SQLITE_UTF8;
         int rcf = SQLITE_ERROR;
         if( strcmp(enc,"utf16le")==0 ) ienc = SQLITE_UTF16LE;
index 08884a1b1ba91c86b0db4cec5c1571cfc969171b..0f894943dd8571bdda8716ec2f152587ec4a4182 100644 (file)
@@ -3981,6 +3981,8 @@ static int fts3AppendToNode(
 
   blobGrowBuffer(pPrev, nTerm, &rc);
   if( rc!=SQLITE_OK ) return rc;
+  assert( pPrev!=0 );
+  assert( pPrev->a!=0 );
 
   nPrefix = fts3PrefixCompress(pPrev->a, pPrev->n, zTerm, nTerm);
   nSuffix = nTerm - nPrefix;
index e7459b1af938710d84bcaed07240636fce081898..a5538ddacf1042eea5e05d0dda20f69244583fd4 100644 (file)
@@ -603,8 +603,10 @@ static int sessionPreupdateHash(
 ** the type byte).
 */
 static int sessionSerialLen(const u8 *a){
-  int e = *a;
+  int e;
   int n;
+  assert( a!=0 );
+  e = *a;
   if( e==0 || e==0xFF ) return 1;
   if( e==SQLITE_NULL ) return 1;
   if( e==SQLITE_INTEGER || e==SQLITE_FLOAT ) return 9;
@@ -5450,6 +5452,7 @@ static int sessionChangeMerge(
 ){
   SessionChange *pNew = 0;
   int rc = SQLITE_OK;
+  assert( aRec!=0 );
 
   if( !pExist ){
     pNew = (SessionChange *)sqlite3_malloc64(sizeof(SessionChange) + nRec);
index 478fdfd714c38c0014388c50320c264700dba4e6..7113776fb9bd31c94734121303e0f95a7ce9e19b 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sa\sharmless\scompiler\swarning\sin\sthe\sexpert\sextension.
-D 2023-10-24T09:57:54.656
+C Fix\svarious\sharmless\sscan-build\swarnings.
+D 2023-10-24T11:06:44.828
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -53,7 +53,7 @@ F ext/async/sqlite3async.h 46b47c79357b97ad85d20d2795942c0020dc20c532114a4980828
 F ext/expert/README.md b321c2762bb93c18ea102d5a5f7753a4b8bac646cb392b3b437f633caf2020c3
 F ext/expert/expert.c d548d603a4cc9e61f446cc179c120c6713511c413f82a4a32b1e1e69d3f086a4
 F ext/expert/expert1.test 0dd5cb096d66bed593e33053a3b364f6ef52ed72064bf5cf298364636dbf3cd6
-F ext/expert/sqlite3expert.c 295ca3b9bd09e857820a7c86b71b25c7c763c68402de7061741ccacff21a5bb2
+F ext/expert/sqlite3expert.c 90446bb1183429308c68ceb23e00cb8252f43b8886cf5efa3fc7e833b5fa24c8
 F ext/expert/sqlite3expert.h ca81efc2679a92373a13a3e76a6138d0310e32be53d6c3bfaedabd158ea8969b
 F ext/expert/test_expert.c d56c194b769bdc90cf829a14c9ecbc1edca9c850b837a4d0b13be14095c32a72
 F ext/fts3/README.content b9078d0843a094d86af0d48dffbff13c906702b4c3558012e67b9c7cc3bf59ee
@@ -78,7 +78,7 @@ F ext/fts3/fts3_tokenizer.h 64c6ef6c5272c51ebe60fc607a896e84288fcbc3
 F ext/fts3/fts3_tokenizer1.c c1de4ae28356ad98ccb8b2e3388a7fdcce7607b5523738c9afb6275dab765154
 F ext/fts3/fts3_unicode.c de426ff05c1c2e7bce161cf6b706638419c3a1d9c2667de9cb9dc0458c18e226
 F ext/fts3/fts3_unicode2.c 416eb7e1e81142703520d284b768ca2751d40e31fa912cae24ba74860532bf0f
-F ext/fts3/fts3_write.c 16df5ea9ff3634821003ac71a0275e3af030517b8768680062f425a347aab5f0
+F ext/fts3/fts3_write.c 5bb4721330ca589f906e72bb824dd4080b313c6d4c4231fa541e9db32dc67982
 F ext/fts3/fts3speed.tcl b54caf6a18d38174f1a6e84219950d85e98bb1e9
 F ext/fts3/tool/fts3cov.sh c331d006359456cf6f8f953e37f2b9c7d568f3863f00bb5f7eb87fea4ac01b73
 F ext/fts3/tool/fts3view.c 413c346399159df81f86c4928b7c4a455caab73bfbc8cd68f950f632e5751674
@@ -554,7 +554,7 @@ F ext/session/sessionrowid.test 85187c2f1b38861a5844868126f69f9ec62223a03449a98a
 F ext/session/sessionsize.test 8fcf4685993c3dbaa46a24183940ab9f5aa9ed0d23e5fb63bfffbdb56134b795
 F ext/session/sessionstat1.test b039e38e2ba83767b464baf39b297cc0b1cc6f3292255cb467ea7e12d0d0280c
 F ext/session/sessionwor.test 6fd9a2256442cebde5b2284936ae9e0d54bde692d0f5fd009ecef8511f4cf3fc
-F ext/session/sqlite3session.c a0694a23f9c72f25e98b7c3a1bc8cfa7e5903d4edafe31efec47de7cd54f5df9
+F ext/session/sqlite3session.c 3e8aa4bd7136b5504952b5d3ab0b2e75f2ab50c7fc2f9915ef980d382dabbf51
 F ext/session/sqlite3session.h 4cf19a51975746d7cff2fdd74db8b769c570958e1c3639ac150d824ac1553b3e
 F ext/session/test_session.c 73e9921205633a08c1497770beecf3dcbc9b826dd4358f7f8152f706eaac5d71
 F ext/userauth/sqlite3userauth.h 7f3ea8c4686db8e40b0a0e7a8e0b00fac13aa7a3
@@ -660,7 +660,7 @@ F src/auth.c 19b7ccacae3dfba23fc6f1d0af68134fa216e9040e53b0681b4715445ea030b4
 F src/backup.c 5c97e8023aab1ce14a42387eb3ae00ba5a0644569e3476f38661fa6f824c3523
 F src/bitvec.c 9eac5f42c11914d5ef00a75605bb205e934f435c579687f985f1f8b0995c8645
 F src/btmutex.c 79a43670447eacc651519a429f6ece9fd638563cf95b469d6891185ddae2b522
-F src/btree.c 58f5cca2aced6888824ed69d19a0c398d288d0840b1c72c0834525e82b10c076
+F src/btree.c f6c8512a0db0851877683e41936aac0f8927bc31630cbb1bc87ccccf79c06944
 F src/btree.h 03e3356f5208bcab8eed4e094240fdac4a7f9f5ddf5e91045ce589f67d47c240
 F src/btreeInt.h ef12a72b708677e48d6bc8dcd66fed25434740568b89e2cfa368093cfc5b9d15
 F src/build.c 1a9061ab67987cfa9c7f9d52ccc862a31d37ad2b05faaf0d72eeb4b4b5ee37cf
@@ -2138,8 +2138,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 9d388267e4e6724e2df333fe09d509e87defcfe984c5c2ebe031152d320812d0
-R c93c65b4d457eea3e32fda50bd8711c7
+P 0c4907ddf9abd1ebfef31c1a53d702c4dcaa015c0032b8b52774c9e260b6cfd7
+R 3b16c84fa7541a0bf70d90782b9e7ac2
 U drh
-Z 3370819568316647d482b2f4e035059a
+Z 5ec383f1783155e9b83d1659c374bbaa
 # Remove this line to create a well-formed Fossil manifest.
index 0939b5868bbfcaf444ec86f4d8b188d789f7226b..cfc515ad630325d7c472778497b2dde34a99768d 100644 (file)
@@ -1 +1 @@
-0c4907ddf9abd1ebfef31c1a53d702c4dcaa015c0032b8b52774c9e260b6cfd7
\ No newline at end of file
+54be9af4469d7e31ee852f67e5aa32996557c10de654a60103fd165d2fedf311
\ No newline at end of file
index ec4d02d19559bdba556dc1d58fefa00180ba61ab..7e340f5e5ea0b17439d63051a1fdff9b41109a50 100644 (file)
@@ -10459,6 +10459,7 @@ static void checkAppendMsg(
 ** corresponds to page iPg is already set.
 */
 static int getPageReferenced(IntegrityCk *pCheck, Pgno iPg){
+  assert( pCheck->aPgRef!=0 );
   assert( iPg<=pCheck->nCkPage && sizeof(pCheck->aPgRef[0])==1 );
   return (pCheck->aPgRef[iPg/8] & (1 << (iPg & 0x07)));
 }
@@ -10467,6 +10468,7 @@ static int getPageReferenced(IntegrityCk *pCheck, Pgno iPg){
 ** Set the bit in the IntegrityCk.aPgRef[] array that corresponds to page iPg.
 */
 static void setPageReferenced(IntegrityCk *pCheck, Pgno iPg){
+  assert( pCheck->aPgRef!=0 );
   assert( iPg<=pCheck->nCkPage && sizeof(pCheck->aPgRef[0])==1 );
   pCheck->aPgRef[iPg/8] |= (1 << (iPg & 0x07));
 }