From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Thu, 11 Jun 2026 16:55:19 +0000 (+0200) Subject: [3.15] gh-151126: Fix missing memory error in `os._path_splitroot` (GH-151339) (... X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=b53743fb7898be82d86cc34ff4b1c5a635e99c72;p=thirdparty%2FPython%2Fcpython.git [3.15] gh-151126: Fix missing memory error in `os._path_splitroot` (GH-151339) (#151360) gh-151126: Fix missing memory error in `os._path_splitroot` (GH-151339) (cherry picked from commit 10595b1cb7ac04ba9a3ef3f7da4fa31c9966300d) Co-authored-by: sobolevn --- diff --git a/Misc/NEWS.d/next/Library/2026-06-11-16-25-38.gh-issue-151126.bh_Usy.rst b/Misc/NEWS.d/next/Library/2026-06-11-16-25-38.gh-issue-151126.bh_Usy.rst new file mode 100644 index 000000000000..25149057aa7d --- /dev/null +++ b/Misc/NEWS.d/next/Library/2026-06-11-16-25-38.gh-issue-151126.bh_Usy.rst @@ -0,0 +1,2 @@ +Fix a crash when :exc:`MemoryError` in :func:`!os._path_splitroot` +was not set properly. diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 4b6b51961731..b58b2af3c5f8 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -5699,7 +5699,7 @@ os__path_splitroot_impl(PyObject *module, path_t *path) buffer = (wchar_t*)PyMem_Malloc(sizeof(wchar_t) * (wcslen(path->wide) + 1)); if (!buffer) { - return NULL; + return PyErr_NoMemory(); } wcscpy(buffer, path->wide); for (wchar_t *p = wcschr(buffer, L'/'); p; p = wcschr(p, L'/')) {