From ff3f6588c3ecb6746a33f14030a90eb32467eece Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Wed, 16 Apr 2025 16:21:58 +0200 Subject: [PATCH] [3.13] gh-130052: Fix search_map_for_section() error handling (GH-132594) (#132598) gh-130052: Fix search_map_for_section() error handling (GH-132594) * Don't call close() if the file descriptor is negative. * If close() fails, chain the existing exception. (cherry picked from commit 014c7f90478780b18d0e33d456483178c8dcc665) Co-authored-by: Victor Stinner --- Modules/_testexternalinspection.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Modules/_testexternalinspection.c b/Modules/_testexternalinspection.c index 2a665affb5e7..2ed79f317b04 100644 --- a/Modules/_testexternalinspection.c +++ b/Modules/_testexternalinspection.c @@ -345,8 +345,10 @@ get_py_runtime_linux(pid_t pid) } exit: - if (close(fd) != 0) { + if (fd >= 0 && close(fd) != 0) { + PyObject *exc = PyErr_GetRaisedException(); PyErr_SetFromErrno(PyExc_OSError); + _PyErr_ChainExceptions1(exc); } if (file_memory != NULL) { munmap(file_memory, file_stats.st_size); -- 2.47.3