From: Victor Stinner Date: Wed, 23 Sep 2020 12:05:32 +0000 (+0200) Subject: bpo-40521: Fix PyUnicode_InternInPlace() (GH-22376) X-Git-Tag: v3.10.0a1~65 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7f413a5d95e6d7ddddd6e2c9844c33594d6288f4;p=thirdparty%2FPython%2Fcpython.git bpo-40521: Fix PyUnicode_InternInPlace() (GH-22376) Fix PyUnicode_InternInPlace() when the INTERNED_STRINGS macro is not defined (when the EXPERIMENTAL_ISOLATED_SUBINTERPRETERS macro is defined). --- diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index fd0e8e008ada..f32ab417c364 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -15754,6 +15754,10 @@ PyUnicode_InternInPlace(PyObject **p) this. */ Py_SET_REFCNT(s, Py_REFCNT(s) - 2); _PyUnicode_STATE(s).interned = SSTATE_INTERNED_MORTAL; +#else + // PyDict expects that interned strings have their hash + // (PyASCIIObject.hash) already computed. + (void)unicode_hash(s); #endif }