From: larrybr Date: Tue, 14 Nov 2023 03:31:24 +0000 (+0000) Subject: Cherry-pick some assert()s to cover misuse of *Put*() from 500+ shell.c callers. X-Git-Tag: version-3.44.1~8^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=26b57aaed745b3c3311dcbfb06da194c34133817;p=thirdparty%2Fsqlite.git Cherry-pick some assert()s to cover misuse of *Put*() from 500+ shell.c callers. FossilOrigin-Name: c1a53c28a4286c4c52fb78398d4dbf5c03de514a1fa9199bf0cfcd2cd3cc7cd9 --- diff --git a/ext/consio/console_io.c b/ext/consio/console_io.c index 379059b807..27727f2a8f 100755 --- a/ext/consio/console_io.c +++ b/ext/consio/console_io.c @@ -371,6 +371,7 @@ SQLITE_INTERNAL_LINKAGE int oPrintfUtf8(const char *zFormat, ...){ #else getEmitStreamInfo(1, &pst, &pfOut); #endif + assert(zFormat!=0); va_start(ap, zFormat); #if SHELL_CON_TRANSLATE if( pstReachesConsole(ppst) ){ @@ -395,6 +396,7 @@ SQLITE_INTERNAL_LINKAGE int ePrintfUtf8(const char *zFormat, ...){ #else getEmitStreamInfo(2, &pst, &pfErr); #endif + assert(zFormat!=0); va_start(ap, zFormat); #if SHELL_CON_TRANSLATE if( pstReachesConsole(ppst) ){ @@ -418,7 +420,7 @@ SQLITE_INTERNAL_LINKAGE int fPrintfUtf8(FILE *pfO, const char *zFormat, ...){ #else getEmitStreamInfo(0, &pst, &pfO); #endif - + assert(zFormat!=0); va_start(ap, zFormat); #if SHELL_CON_TRANSLATE if( pstReachesConsole(ppst) ){ @@ -442,6 +444,7 @@ SQLITE_INTERNAL_LINKAGE int fPutsUtf8(const char *z, FILE *pfO){ #else getEmitStreamInfo(0, &pst, &pfO); #endif + assert(z!=0); #if SHELL_CON_TRANSLATE if( pstReachesConsole(ppst) ){ int rv; @@ -465,6 +468,7 @@ SQLITE_INTERNAL_LINKAGE int ePutsUtf8(const char *z){ #else getEmitStreamInfo(2, &pst, &pfErr); #endif + assert(z!=0); #if SHELL_CON_TRANSLATE if( pstReachesConsole(ppst) ) return conZstrEmit(ppst, z, (int)strlen(z)); else { @@ -483,6 +487,7 @@ SQLITE_INTERNAL_LINKAGE int oPutsUtf8(const char *z){ #else getEmitStreamInfo(1, &pst, &pfOut); #endif + assert(z!=0); #if SHELL_CON_TRANSLATE if( pstReachesConsole(ppst) ) return conZstrEmit(ppst, z, (int)strlen(z)); else { @@ -502,6 +507,7 @@ SQLITE_INTERNAL_LINKAGE int oPutsUtf8(const char *z){ static const char* zSkipValidUtf8(const char *z, int nAccept, long ccm){ int ng = (nAccept<0)? -nAccept : 0; const char *pcLimit = (nAccept>=0)? z+nAccept : 0; + assert(z!=0); while( (pcLimit)? (z 0) ){ char c = *z; if( (c & 0x80) == 0 ){ diff --git a/manifest b/manifest index f80d66d547..10cda3ffd3 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Manual\smerge\sof\sbranch-3.44\swith\s3\ssources\saffected/created\sby\sconsole-io-lib\schanges. -D 2023-11-13T17:45:13.119 +C Cherry-pick\ssome\sassert()s\sto\scover\smisuse\sof\s*Put*()\sfrom\s500+\sshell.c\scallers. +D 2023-11-14T03:31:24.845 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -50,7 +50,7 @@ F ext/README.md fd5f78013b0a2bc6f0067afb19e6ad040e89a10179b4f6f03eee58fac5f169bd F ext/async/README.txt e12275968f6fde133a80e04387d0e839b0c51f91 F ext/async/sqlite3async.c 6f247666b495c477628dd19364d279c78ea48cd90c72d9f9b98ad1aff3294f94 F ext/async/sqlite3async.h 46b47c79357b97ad85d20d2795942c0020dc20c532114a49808287f04aa5309a -F ext/consio/console_io.c b59dac1eb138339fcef6da8feae2f3a9a4397b7362ef52b4dca630ef5f848f23 x +F ext/consio/console_io.c baffbeb5e73dcd3191c677bbcd5266c35891c17f87930cd89cf2463b7ec2da09 x F ext/consio/console_io.h 515d27ca9e5a5d36e12ff2b85977b5931fdeba0ce142f40178d94dc8638b4c81 F ext/expert/README.md b321c2762bb93c18ea102d5a5f7753a4b8bac646cb392b3b437f633caf2020c3 F ext/expert/expert.c d548d603a4cc9e61f446cc179c120c6713511c413f82a4a32b1e1e69d3f086a4 @@ -2141,11 +2141,9 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 94f62093866823e013f976db8f80390bee2a9140f4cbec50d1ad8ded28f732ae -R e86cde2fd2d69b08af8b54f0a4ddb59b -T *branch * consio-3.44 -T *sym-consio-3.44 * -T -sym-branch-3.44 * +P 18ebcf117aad77fa968ff5c537c9b56c1342dea687377a72a02519412a6aa565 +Q +2341f9b6a48634a94e90e849f579afd07d398c3e0304efccf07d18b41a0e40aa +R 60fd6c8a04f40ed6debc651106b241bb U larrybr -Z a06153e04efd0c7f697febaa53441d98 +Z ec0a20ca68f8ea6e6133b8144bc6b5ec # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 84dfc3221a..d5c0ee73b5 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -18ebcf117aad77fa968ff5c537c9b56c1342dea687377a72a02519412a6aa565 \ No newline at end of file +c1a53c28a4286c4c52fb78398d4dbf5c03de514a1fa9199bf0cfcd2cd3cc7cd9 \ No newline at end of file