From: drh <> Date: Mon, 31 Oct 2022 01:22:38 +0000 (+0000) Subject: Extra OOM check in shell_error_context() of the CLI. X-Git-Tag: version-3.40.0~56 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1e84e1e632601b0eecc2e2616fe25721616c5706;p=thirdparty%2Fsqlite.git Extra OOM check in shell_error_context() of the CLI. [forum:/forumpost/5708841db0|forum post 5708841db0]. FossilOrigin-Name: cb12ac5de17e677f089d7b0b46803efbd9a9178972ffb0454a8b557b06633658 --- diff --git a/manifest b/manifest index 53c96a5202..66b0442ca1 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Add\soo1.DB.selectArray()\sand\sselectObject(). -D 2022-10-30T11:39:47.998 +C Extra\sOOM\scheck\sin\sshell_error_context()\sof\sthe\sCLI.\n[forum:/forumpost/5708841db0|forum\spost\s5708841db0]. +D 2022-10-31T01:22:38.233 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -637,7 +637,7 @@ F src/random.c 546d6feb15ec69c1aafe9bb351a277cbb498fd5410e646add673acb805714960 F src/resolve.c efea4e5fbecfd6d0a9071b0be0d952620991673391b6ffaaf4c277b0bb674633 F src/rowset.c ba9515a922af32abe1f7d39406b9d35730ed65efab9443dc5702693b60854c92 F src/select.c 8a709a8e19b32d2c411eaae1a10e2ee214cf740288859a9f9a362fcb2f50eaf1 -F src/shell.c.in 70e7c85074806cdb35c019a5cb5b16f989edb98d1b0e8ca441c2693cbb2e3dca +F src/shell.c.in bde69ad6a9887396c87d089da84c0fe1e432957faebd9206b9185be735341104 F src/sqlite.h.in d9c8a6243fc0a1c270d69db33758e34b810af3462f9bc5b4af113b347e07c69d F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 F src/sqlite3ext.h 5336beea1868d99d2f62e628dbea55e97267dbff8193291ab175e960c5df9141 @@ -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 bbce49d81abc491ca666474040a53057e26e99131fea9449de253f88f4415ded -R db56e1c7d598fb49e6f4c473767fbbc1 -U stephan -Z bb0672930fc07425c0c9d9cd4f958f03 +P 7660db2a2e9c4f3a6a9343d6929744ad0f4be6820976411f9080165491da59b7 +R 39f668d8fe2469c4ce02b92540fc594e +U drh +Z ccf68645ddf326b444fdf39a1dc53fe4 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 9f2d2e8315..3fa01659b9 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -7660db2a2e9c4f3a6a9343d6929744ad0f4be6820976411f9080165491da59b7 \ No newline at end of file +cb12ac5de17e677f089d7b0b46803efbd9a9178972ffb0454a8b557b06633658 \ No newline at end of file diff --git a/src/shell.c.in b/src/shell.c.in index cbac2a7302..94be71be26 100644 --- a/src/shell.c.in +++ b/src/shell.c.in @@ -2664,6 +2664,7 @@ static char *shell_error_context(const char *zSql, sqlite3 *db){ while( (zSql[len]&0xc0)==0x80 ) len--; } zCode = sqlite3_mprintf("%.*s", len, zSql); + shell_check_oom(zCode); for(i=0; zCode[i]; i++){ if( IsSpace(zSql[i]) ) zCode[i] = ' '; } if( iOffset<25 ){ zMsg = sqlite3_mprintf("\n %z\n %*s^--- error here", zCode, iOffset, "");