From 7c6f2880aaf6c2632381da5eb59da2a4b98cf013 Mon Sep 17 00:00:00 2001 From: drh <> Date: Mon, 2 Sep 2024 21:59:31 +0000 Subject: [PATCH] Fix possible NULL pointer dereference following OOM in the new error reporting logic of the percentile extension. FossilOrigin-Name: 7891a266c4425722ae8b9231397ef9e42e2432be9e6b70632dfaf9ff15300d2c --- ext/misc/percentile.c | 2 +- manifest | 14 +++++++------- manifest.uuid | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/ext/misc/percentile.c b/ext/misc/percentile.c index e02fa6efd8..1d69a49398 100644 --- a/ext/misc/percentile.c +++ b/ext/misc/percentile.c @@ -218,7 +218,7 @@ static void percentError(sqlite3_context *pCtx, const char *zFormat, ...){ va_start(ap, zFormat); zMsg1 = sqlite3_vmprintf(zFormat, ap); va_end(ap); - zMsg2 = sqlite3_mprintf(zMsg1, pFunc->zName); + zMsg2 = zMsg1 ? sqlite3_mprintf(zMsg1, pFunc->zName) : 0; sqlite3_result_error(pCtx, zMsg2, -1); sqlite3_free(zMsg1); sqlite3_free(zMsg2); diff --git a/manifest b/manifest index ec0d0dc8b2..c660dea881 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sa\stechnically\sundefined\ssigned\sinteger\soverflow\sin\sfts5. -D 2024-09-02T18:41:59.039 +C Fix\spossible\sNULL\spointer\sdereference\sfollowing\sOOM\sin\sthe\snew\serror\sreporting\nlogic\sof\sthe\spercentile\sextension. +D 2024-09-02T21:59:31.581 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -411,7 +411,7 @@ F ext/misc/nextchar.c 7877914c2a80c2f181dd04c3dbef550dfb54c93495dc03da2403b5dd58 F ext/misc/noop.c f1a21cc9b7a4e667e5c8458d80ba680b8bd4315a003f256006046879f679c5a0 F ext/misc/normalize.c bd84355c118e297522aba74de34a4fd286fc775524e0499b14473918d09ea61f F ext/misc/pcachetrace.c f4227ce03fb16aa8d6f321b72dd051097419d7a028a9853af048bee7645cb405 -F ext/misc/percentile.c 2ab82e3ce7bbf22ede8c3e894b767281fbdb482d7b399c105b6f5646b41eb8a3 +F ext/misc/percentile.c b37f01f559cec6ed3c4bcf5079e355cfe8a64eb32cc15c3b0f531980fd632b67 F ext/misc/prefixes.c 82645f79229877afab08c8b08ca1e7fa31921280906b90a61c294e4f540cd2a6 F ext/misc/qpvtab.c fc189e127f68f791af90a487f4460ec91539a716daf45a0c357e963fd47cc06c F ext/misc/randomjson.c ef835fc64289e76ac4873b85fe12f9463a036168d7683cf2b773e36e6262c4ed @@ -2212,8 +2212,8 @@ F vsixtest/vsixtest.tcl 6195aba1f12a5e10efc2b8c0009532167be5e301abe5b31385638080 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 831e2be4117dc7f5113f66d3e484ca34e4405444ac7b0def12ee9a00608d40da -R c9ac0677bad9a9035657d136a5035194 -U dan -Z a6e59573e987571a1350f930eef496ac +P e6bec37ea1ca51e1d048941ce4c5211d8fc5c5e3556a1441f9c79b036843f9e3 +R b930e9b50558c8ecfca10ed9c4f54cf8 +U drh +Z 4d2062160b04956960419c5966a96c49 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 4138045228..ea91c10bca 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -e6bec37ea1ca51e1d048941ce4c5211d8fc5c5e3556a1441f9c79b036843f9e3 +7891a266c4425722ae8b9231397ef9e42e2432be9e6b70632dfaf9ff15300d2c -- 2.47.2