]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Minor bug fixes in tmstmpvfs.c, showdb.c, and showtmlog.c.
authordrh <>
Thu, 8 Jan 2026 15:25:04 +0000 (15:25 +0000)
committerdrh <>
Thu, 8 Jan 2026 15:25:04 +0000 (15:25 +0000)
FossilOrigin-Name: 1fee8265f7eab649ee8b28456c37d95198f5cde54e905154e3eccc0b328ece9a

ext/misc/tmstmpvfs.c
manifest
manifest.uuid
tool/showdb.c
tool/showtmlog.c

index 94630cc4ef52c8a51572855ac67979a3b8dda320..c2836bd86c7e717dc0731098e61a76d79dfbc840 100644 (file)
@@ -616,34 +616,34 @@ static int tmstmpFileControl(sqlite3_file *pFile, int op, void *pArg){
   TmstmpFile *p = (TmstmpFile*)pFile;
   pFile = ORIGFILE(pFile);
   rc = pFile->pMethods->xFileControl(pFile, op, pArg);
-  if( rc==SQLITE_OK ){
-    switch( op ){
-      case SQLITE_FCNTL_VFSNAME: {
-        if( p->hasCorrectReserve ){
-          *(char**)pArg = sqlite3_mprintf("tmstmp/%z", *(char**)pArg);
-        }
-        break;
+  switch( op ){
+    case SQLITE_FCNTL_VFSNAME: {
+      if( p->hasCorrectReserve && rc==SQLITE_OK ){
+        *(char**)pArg = sqlite3_mprintf("tmstmp/%z", *(char**)pArg);
       }
-      case SQLITE_FCNTL_CKPT_START: {
-        p->inCkpt = 1;
-        assert( p->isDb );
-        assert( p->pPartner!=0 );
-        p->pPartner->inCkpt = 1;
-        if( p->hasCorrectReserve ){
-          tmstmpEvent(p, ELOG_CKPT_START, 0, 0, 0);
-        }
-        break;
+      break;
+    }
+    case SQLITE_FCNTL_CKPT_START: {
+      p->inCkpt = 1;
+      assert( p->isDb );
+      assert( p->pPartner!=0 );
+      p->pPartner->inCkpt = 1;
+      if( p->hasCorrectReserve ){
+        tmstmpEvent(p, ELOG_CKPT_START, 0, 0, 0);
       }
-      case SQLITE_FCNTL_CKPT_DONE: {
-        p->inCkpt = 0;
-        assert( p->isDb );
-        assert( p->pPartner!=0 );
-        p->pPartner->inCkpt = 0;
-        if( p->hasCorrectReserve ){
-          tmstmpEvent(p, ELOG_CKPT_DONE, 0, 0, 0);
-        }
-        break;
+      rc = SQLITE_OK;
+      break;
+    }
+    case SQLITE_FCNTL_CKPT_DONE: {
+      p->inCkpt = 0;
+      assert( p->isDb );
+      assert( p->pPartner!=0 );
+      p->pPartner->inCkpt = 0;
+      if( p->hasCorrectReserve ){
+        tmstmpEvent(p, ELOG_CKPT_DONE, 0, 0, 0);
       }
+      rc = SQLITE_OK;
+      break;
     }
   }
   return rc;
index c3bb94ffa0c779329f626a848e74b8821ed9e72b..b825a3333b7feda853c8cb359c1d50f09e48e2b6 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Remove\san\sobsolete\s'32-bit'\slabel\sfrom\stester1-worker.
-D 2026-01-08T15:06:28.736
+C Minor\sbug\sfixes\sin\stmstmpvfs.c,\sshowdb.c,\sand\sshowtmlog.c.
+D 2026-01-08T15:25:04.189
 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@ -402,7 +402,7 @@ F ext/misc/sqlite3_stdio.h 27a4ecea47e61bc9574ccdf2806f468afe23af2f95028c9b689bf
 F ext/misc/stmt.c b090086cd6bd6281c21271d38d576eeffe662f0e6b67536352ce32bbaa438321
 F ext/misc/stmtrand.c 59cffa5d8e158943ff1ce078956d8e208e8c04e67307e8f249dece2436dcb7fc
 F ext/misc/templatevtab.c 10f15b165b95423ddef593bc5dcb915ec4eb5e0f1066d585e5435a368b8bc22b
-F ext/misc/tmstmpvfs.c f7845d1641cfc26d78ae017ccabc05cb01f712db07f95ae1bad1df564d566a2a
+F ext/misc/tmstmpvfs.c ff66db6b88bc5bd011d5a92e8f5e35af93499d4d615330ab14a61a23ce5c7856
 F ext/misc/totype.c ba11aac3c0b52c685bd25aa4e0f80c41c624fb1cc5ab763250e09ddc762bc3a8
 F ext/misc/uint.c 327afc166058acf566f33a15bf47c869d2d3564612644d9ff81a23efc8b36039
 F ext/misc/unionvtab.c 716d385256d5fb4beea31b0efede640807e423e85c9784d21d22f0cce010a785
@@ -2159,12 +2159,12 @@ F tool/pagesig.c f98909b4168d9cac11a2de7f031adea0e2f3131faa7515a72807c03ec58eafe
 F tool/replace.tcl 511c61acfe563dfb58675efb4628bb158a13d48ff8322123ac447e9d25a82d9a
 F tool/restore_jrnl.tcl 1079ecba47cc82fa82115b81c1f68097ab1f956f357ee8da5fc4b2589af6bd98
 F tool/rollback-test.c 9fc98427d1e23e84429d7e6d07d9094fbdec65a5
-F tool/showdb.c 99b1061df9077c0370042a0e414d8f17b30db01d83bbe74ab7fb8fbaf1301bfc
+F tool/showdb.c db1fba9149d29bc4d9fe2826b881d66da980a5f01e0c0858244e93f18d388321
 F tool/showjournal.c 5bad7ae8784a43d2b270d953060423b8bd480818
 F tool/showlocks.c 9cc5e66d4ebbf2d194f39db2527ece92077e86ae627ddd233ee48e16e8142564
 F tool/showshm.c a0ab6ec32dd1f11218ca2a4018f8fb875b59414801ab8ceed8b2e69b7b45a809
 F tool/showstat4.c b706fcbc4cd1a6e4a73ac32549afc4b460479d650402d64b23e8d813516e8de4
-F tool/showtmlog.c eb0e6d3f6345da795edcd8dd1f395b52985c1d3c8e861722a60e7651ded33360
+F tool/showtmlog.c 2ee3cfe698f64256419b2c2beacd504f24b020d6e2a91115f872a28ede188aa1
 F tool/showwal.c 11eca547980a066b081f512636151233350ac679f29ecf4ebfce7f4530230b3d
 F tool/soak1.tcl a3892082ed1079671565c044e93b55c3c7f38829aedf53cc597c65d23ffdaddf
 F tool/spaceanal.tcl 1f83962090a6b60e1d7bf92495d643e622bef9fe82ea3f2d22350dcbce9a12d0
@@ -2191,8 +2191,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee
 F tool/warnings.sh d924598cf2f55a4ecbc2aeb055c10bd5f48114793e7ba25f9585435da29e7e98
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
 F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c
-P e2634e500cce44650ad5dd95b722b993b1f999b9f8b2396ab15154e67cb065c7
-R 09c7e4f9e51b68995275f1b08c5fc647
-U stephan
-Z 3ce2c4087e51df424d65b55ac9e30b7a
+P e14d9a980351a8d5e935e6991ea02a1c40c9ea8f0ad0fadcabe07d575a9b289c
+R 5732f9b90659e548d32a735de971cff5
+U drh
+Z af5bc160622d940e12d2af419055b1c0
 # Remove this line to create a well-formed Fossil manifest.
index 032962a0f9034f4c4daed51708ee414b942712c5..79dd7159a307bfae42144ecc32099e4e766a751a 100644 (file)
@@ -1 +1 @@
-e14d9a980351a8d5e935e6991ea02a1c40c9ea8f0ad0fadcabe07d575a9b289c
+1fee8265f7eab649ee8b28456c37d95198f5cde54e905154e3eccc0b328ece9a
index 78af2c49ac84cdb5cadb16d72fef1d6d08e768bd..6ee39707c731b2240af6e25a451c3b513a0ef09b 100644 (file)
@@ -175,8 +175,8 @@ static unsigned char *fileRead(sqlite3_int64 ofst, int nByte){
     }
   }
   if( g.aPageTag && nByte==(int)g.pagesize ){
-    unsigned int pgno = (unsigned int)(ofst/g.pagesize);
-    if( pgno>=0 && pgno<=g.mxPage ){
+    unsigned int pgno = (unsigned int)(ofst/g.pagesize) + 1;
+    if( pgno>0 && pgno<=g.mxPage ){
       memcpy(g.aPageTag[pgno].a, &aData[nByte-16], 16);
     }
   }
@@ -856,7 +856,7 @@ static void page_usage_cell(
     while( ovfl && (cnt++)<g.mxPage ){
       page_usage_msg(ovfl, "overflow %d from cell %d of page %u",
                      cnt, cellno, pgno);
-      a = fileRead((ovfl-1)*(sqlite3_int64)g.pagesize, 4);
+      a = fileRead((ovfl-1)*(sqlite3_int64)g.pagesize, g.pagesize);
       ovfl = decodeInt32(a);
       sqlite3_free(a);
     }
@@ -1220,7 +1220,7 @@ static void ptrmap_coverage_report(const char *zDbName){
   for(pgno=2; pgno<=g.mxPage; pgno += perPage+1){
     printf("%5llu: PTRMAP page covering %llu..%llu\n", pgno,
            pgno+1, pgno+perPage);
-    a = fileRead((pgno-1)*g.pagesize, usable);
+    a = fileRead((pgno-1)*g.pagesize, g.pagesize);
     for(i=0; i+5<=usable; i+=5){
       const char *zType;
       u32 iFrom = decodeInt32(&a[i+1]);
index 4770c6aa3bf3ea47e580d0753666e53dd72322d7..eb11f4bd018ece9b369d27a8b336524fc2b6c78e 100644 (file)
@@ -64,7 +64,7 @@ static const char *decodeTimestamp(const unsigned char *a){
 }
 
 int main(int argc, char **argv){
-  int i;
+  int i,j;
   FILE *in;
   unsigned int a2, a3;
   unsigned char a[16];
@@ -79,8 +79,8 @@ int main(int argc, char **argv){
     }
     while( 16==fread(a, 1, 16, in) ){
       printf("%s ", decodeTimestamp(a+2));
-      for(a2=0, i=8; i<=11; i++) a2 = (a2<<8)+a[i];
-      for(a3=0, i=12; i<=15; i++) a3 = (a3<<8)+a[i];
+      for(a2=0, j=8; j<=11; j++) a2 = (a2<<8)+a[j];
+      for(a3=0, j=12; j<=15; j++) a3 = (a3<<8)+a[j];
       switch( a[0] ){
         case 0x01: {
           printf("open-db   pid %u\n", a2);