https://github.com/python/cpython/commit/78ea9eb3406781c9f3fc3e216377bd0e38350d05
commit: 78ea9eb3406781c9f3fc3e216377bd0e38350d05
branch: 3.14
author: Miss Islington (bot) <[email protected]>
committer: vstinner <[email protected]>
date: 2026-01-12T16:06:24Z
summary:

[3.14] gh-143544: Fix possible use-after-free in the JSON decoder when 
JSONDecodeError disappears during raising it (GH-143561) (#143733)

gh-143544: Fix possible use-after-free in the JSON decoder when JSONDecodeError 
disappears during raising it (GH-143561)
(cherry picked from commit c3157480601499565fd42a8afbdb0207328ac484)

Co-authored-by: VanshAgarwal24036 
<[email protected]>
Co-authored-by: Bénédikt Tran <[email protected]>

files:
M Modules/_json.c

diff --git a/Modules/_json.c b/Modules/_json.c
index 2f82a69a1579dc..b3959cfe4a11b3 100644
--- a/Modules/_json.c
+++ b/Modules/_json.c
@@ -316,11 +316,12 @@ raise_errmsg(const char *msg, PyObject *s, Py_ssize_t end)
 
     PyObject *exc;
     exc = PyObject_CallFunction(JSONDecodeError, "zOn", msg, s, end);
-    Py_DECREF(JSONDecodeError);
     if (exc) {
         PyErr_SetObject(JSONDecodeError, exc);
         Py_DECREF(exc);
     }
+
+    Py_DECREF(JSONDecodeError);
 }
 
 static void

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]

Reply via email to