From: drh <> Date: Mon, 27 Jul 2026 10:19:50 +0000 (+0000) Subject: Use snprintf() rather than sprintf() in the dtostr() test function of X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=35db2d60d3b3570a8900f0000b246240c2897bf5;p=thirdparty%2Fsqlite.git Use snprintf() rather than sprintf() in the dtostr() test function of the CLI. [forum:/info/2026-07-27T09:44:11Z|Forum 2026-07-27T09:44:11Z]. FossilOrigin-Name: c0681a6cb72c3bf012a253206ba4ef30db039cdfb01d53758cdb184b67ff954f --- diff --git a/manifest b/manifest index 16dcc313b8..610424519e 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Add\sreference\scounting\sto\sthe\sEditDist3Config\sobject\sin\sthe\sspellfix\nextension.\s\sThis\sshould\sprevent\spossible\sUAF\sfollowing\sOOM\sas\ndescribed\sby\s[bugs:/info/2026-07-26T07:55:13Z|Bug\s2026-07-26T07:55:13Z]. -D 2026-07-26T18:45:54.684 +C Use\ssnprintf()\srather\sthan\ssprintf()\sin\sthe\sdtostr()\stest\sfunction\sof\nthe\sCLI.\s[forum:/info/2026-07-27T09:44:11Z|Forum\s2026-07-27T09:44:11Z]. +D 2026-07-27T10:19:50.623 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea @@ -743,7 +743,7 @@ F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c F src/resolve.c 7145e41ad75e04a811b326aa5faf83c2e071480fabd9fc825055a6b889e6cb86 F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97 F src/select.c 6e3ee525a82bb1800b0b464bc6ed5532e97e484eec336004ab1842cb298be61c -F src/shell.c.in 0df571dd1eae1a15577361902eb5487a072d3290ea94e1e72e757050b641f870 +F src/shell.c.in 773fc57916edeacef3f314e4dc285f250e17086284cc7a2d382d01f06f160084 F src/sqlite.h.in 2101a2b494cbc282d0dc1c3f631c4fb83060c52876cc9d7615b091ad66d932b1 F src/sqlite3.rc 015537e6ac1eec6c7050e17b616c2ffe6f70fca241835a84a4f0d5937383c479 F src/sqlite3ext.h 0efd4723bad9124ea1f581d9f1ea0254ac1c6f3e5fb29e4f3dcf36c72485a456 @@ -2217,8 +2217,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c -P f28494eeafc37320932a932044ecd66b6900632a1eccd45a9f8bed653cee3466 -R ff8e7fa43c25f15b4af427dedff8d5b9 +P 37364eaecc148133de4e5b329e10c70922e65829244b4abd448c0adb5ca40877 +R d765f6a36d5820cedd48a58374c28db0 U drh -Z 17cd07d977686b1b28954f791aa43695 +Z 42085ee04acc3aa0f2e050826f3b7caf # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 2a3f725709..e0dad6a35a 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -37364eaecc148133de4e5b329e10c70922e65829244b4abd448c0adb5ca40877 +c0681a6cb72c3bf012a253206ba4ef30db039cdfb01d53758cdb184b67ff954f diff --git a/src/shell.c.in b/src/shell.c.in index f71f92653b..e188c4ce13 100644 --- a/src/shell.c.in +++ b/src/shell.c.in @@ -1741,7 +1741,8 @@ static void shellDtostr( char z[400]; if( n<1 ) n = 1; if( n>350 ) n = 350; - sprintf(z, "%#+.*e", n, r); + z[sizeof(z)-1] = 0; + snprintf(z, sizeof(z)-1, "%#+.*e", n, r); sqlite3_result_text(pCtx, z, -1, SQLITE_TRANSIENT); }