aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordrh <>2022-11-07 11:05:53 +0000
committerdrh <>2022-11-07 11:05:53 +0000
commitb36f697b50a868d810c32a87a602dc5889b664d3 (patch)
tree16c7500ac56c71c2c6f3ffcf15307bb6dd92bfde
parentb819202acfdd1486cc12ef1f7b67eada454d7f18 (diff)
downloadsqlite-b36f697b50a868d810c32a87a602dc5889b664d3.tar.gz
sqlite-b36f697b50a868d810c32a87a602dc5889b664d3.zip
Make sure that the recoverStrlen() function (used internally by the new
recovery extension) is 64-bit safe. FossilOrigin-Name: ea30a6bfc463acce26a4d710e7bf56519ad096ce2fe904ee7e199f5c55068034
-rw-r--r--ext/recover/sqlite3recover.c7
-rw-r--r--manifest12
-rw-r--r--manifest.uuid2
3 files changed, 9 insertions, 12 deletions
diff --git a/ext/recover/sqlite3recover.c b/ext/recover/sqlite3recover.c
index 67c7aa4f2..30260f014 100644
--- a/ext/recover/sqlite3recover.c
+++ b/ext/recover/sqlite3recover.c
@@ -313,11 +313,8 @@ static void recoverAssertMutexHeld(void){
** Like strlen(). But handles NULL pointer arguments.
*/
static int recoverStrlen(const char *zStr){
- int nRet = 0;
- if( zStr ){
- while( zStr[nRet] ) nRet++;
- }
- return nRet;
+ if( zStr==0 ) return 0;
+ return (int)(strlen(zStr)&0x7fffffff);
}
/*
diff --git a/manifest b/manifest
index cfcb4ee9b..951067154 100644
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C The\srecoverAssertMutexHeld()\sfunction\sis\sfor\stesting\sand\sverification\sonly\nand\sshould\sbe\sa\sharmless\sno-op\sfor\sproduction\sbuilds.\n[forum/forumpost/b4f2c7d402|Forum\spost\sb4f2c7d402].
-D 2022-11-06T17:19:34.134
+C Make\ssure\sthat\sthe\srecoverStrlen()\sfunction\s(used\sinternally\sby\sthe\snew\nrecovery\sextension)\sis\s64-bit\ssafe.
+D 2022-11-07T11:05:53.327
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -398,7 +398,7 @@ F ext/recover/recoverpgsz.test 3658ab8e68475b1bb87d6af88baa04551c84b73280a566a1b
F ext/recover/recoverrowid.test f948bf4024a5f41b0e21b8af80c60564c5b5d78c05a8d64fc00787715ff9f45f
F ext/recover/recoverslowidx.test 5205a9742dd9490ee99950dabb622307355ef1662dea6a3a21030057bfd81411
F ext/recover/recoversql.test e66d01f95302a223bcd3fd42b5ee58dc2b53d70afa90b0d00e41e4b8eab20486
-F ext/recover/sqlite3recover.c fd4b8a8607a50259764afd98757511e745d8b023d4a75df1cef1a412239b0f3d
+F ext/recover/sqlite3recover.c 1e4de9cd30daa67e5c1cd0cafb764ddf183087ce037ab47b7c1a7e2921c90d37
F ext/recover/sqlite3recover.h 011c799f02deb70ab685916f6f538e6bb32c4e0025e79bfd0e24ff9c74820959
F ext/recover/test_recover.c 1a34e2d04533d919a30ae4d5caeb1643f6684e9ccd7597ca27721d8af81f4ade
F ext/repair/README.md 92f5e8aae749a4dae14f02eea8e1bb42d4db2b6ce5e83dbcdd6b1446997e0c15
@@ -2054,8 +2054,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 2b68fc8aa35cc69e4d2c26aaebbf3f2b1f1c08d15ca9efcbe5be21d45735d3f1
-R e151c91fffb05c9af064409987d0dbe9
+P d75504710c86af0037ac897106aadffe54955463195ee4dfb2cdfc81d396cbb4
+R b99a319ac2c87490a60dae7da1cd7190
U drh
-Z c4b46067f2f5ee487396a5f348d0bff6
+Z e0e2bec8b6207840b932920137b279fa
# Remove this line to create a well-formed Fossil manifest.
diff --git a/manifest.uuid b/manifest.uuid
index eabebd95c..b009be64f 100644
--- a/manifest.uuid
+++ b/manifest.uuid
@@ -1 +1 @@
-d75504710c86af0037ac897106aadffe54955463195ee4dfb2cdfc81d396cbb4 \ No newline at end of file
+ea30a6bfc463acce26a4d710e7bf56519ad096ce2fe904ee7e199f5c55068034 \ No newline at end of file