https://github.com/python/cpython/commit/72c85c6cb67e9dcc4e15aeabec3c690090d6cd7c
commit: 72c85c6cb67e9dcc4e15aeabec3c690090d6cd7c
branch: 3.14
author: Miss Islington (bot) <[email protected]>
committer: eendebakpt <[email protected]>
date: 2026-09-29T22:18:32Z
summary:

[3.14] gh-157892: Fix error check on _Py_hashtable_set() in intern_static() 
(GH-157898) (#158300)

gh-157892: Fix error check on _Py_hashtable_set() in intern_static() (GH-157898)

_Py_hashtable_set() returns -1 on failure, so the "< -1" check could never be 
true and the Py_FatalError() call was unreachable.
(cherry picked from commit a4eb936727e5f949f5dc8c8a38bf6d325518f29b)

Co-authored-by: Rishi Raj <[email protected]>
Co-authored-by: Pieter Eendebak <[email protected]>

files:
M Objects/unicodeobject.c

diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index 735cc04734e477..a22fc71a677509 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -15947,7 +15947,7 @@ intern_static(PyInterpreterState *interp, PyObject *s 
/* stolen */)
         return Py_NewRef(r);
     }
 
-    if (_Py_hashtable_set(INTERNED_STRINGS, s, s) < -1) {
+    if (_Py_hashtable_set(INTERNED_STRINGS, s, s) < 0) {
         Py_FatalError("failed to intern static string");
     }
 

_______________________________________________
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