From: drh <> Date: Tue, 9 Jun 2026 10:16:40 +0000 (+0000) Subject: Change loop counter variables from int to i64 to avoid a potential X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2f5d281796853250befde5f83dfe8b909c4a5b39;p=thirdparty%2Fsqlite.git Change loop counter variables from int to i64 to avoid a potential integer overflow inside an assert() statement when SQLite is compiled with SQLITE_DEBUG and an extra-large SQLITE_MAX_LENGTH. Does not affect production builds. [bugs:/info/2026-06-09T08:53:14Z|Bug 2026-06-09T08:53:14Z]. FossilOrigin-Name: 77f615d9833b1f5eaabcb1a6b59af3a6698752abcd16592091f1630beec5969e --- diff --git a/manifest b/manifest index 8a4f1d6623..241531dda2 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sbuilds\son\si486\sCPUs.\s\s[forum:/info/2025-01-25T12:58:44Z|Forum\s2025-01-25T12:58:44Z]. -D 2026-06-08T18:15:27.790 +C Change\sloop\scounter\svariables\sfrom\sint\sto\si64\sto\savoid\sa\spotential\ninteger\soverflow\sinside\san\sassert()\sstatement\swhen\sSQLite\sis\scompiled\s\nwith\sSQLITE_DEBUG\sand\san\sextra-large\sSQLITE_MAX_LENGTH.\s\sDoes\snot\naffect\sproduction\sbuilds.\n[bugs:/info/2026-06-09T08:53:14Z|Bug\s2026-06-09T08:53:14Z]. +D 2026-06-09T10:16:40.543 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea @@ -691,7 +691,7 @@ F src/delete.c 59eeca3fb88c29329afc41bb803ee568b120d9dd7470b5f38ab55cc38390b451 F src/expr.c e97dd9f6ada4c448764e225d8963091bf630b3efb2c92e4d0762571cca2a14e5 F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007 F src/fkey.c 931f74cec1dc8038a0217ef340c91ce147dd1bbed08dc40c47ee0ec6edfffb08 -F src/func.c 2fc6a53626184593eacb78a2bbf22b779da126f5ee17fb31c93245a95b89fa3d +F src/func.c ad4b0b12b3227c29f9fc989055582fc7079158309d5b07c005de4449c9faf503 F src/global.c a19e4b1ca1335f560e9560e590fc13081e21f670643367f99cb9e8f9dc7d615b F src/hash.c 03c8c0f4be9e8bcb6de65aa26d34a61d48a9430747084a69f9469fbb00ea52ca F src/hash.h 46b92795a95bfefb210f52f0c316e9d7cdbcdd7e7fcfb0d8be796d3a5767cddf @@ -2208,8 +2208,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c -P 8ba5acabf9a0273ffbc2ba0bacc7f0b000690db91081858e4e563d6cbeeb4e7a -R d1fc1be8e784f6c0da33ac3ae03f9ce5 +P 4cb349370daab17123770c814c71872a3e4c616a3f984569b3d7f97f9c3f5ea0 +R 244394416ff09d564d1281a0fcc58993 U drh -Z d19c6e837904f1722c6702fe78a9f454 +Z d302b383b3f82b3d1b9b69e05a330016 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 1343db07de..7e46448482 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -4cb349370daab17123770c814c71872a3e4c616a3f984569b3d7f97f9c3f5ea0 +77f615d9833b1f5eaabcb1a6b59af3a6698752abcd16592091f1630beec5969e diff --git a/src/func.c b/src/func.c index f14b64173b..1051d6a654 100644 --- a/src/func.c +++ b/src/func.c @@ -1513,7 +1513,7 @@ static void replaceFunc( int nRep; /* Size of zRep */ i64 nOut; /* Maximum size of zOut */ int loopLimit; /* Last zStr[] that might match zPattern[] */ - int i, j; /* Loop counters */ + i64 i, j; /* Loop counters */ unsigned cntExpand; /* Number zOut expansions */ sqlite3 *db = sqlite3_context_db_handle(context);