bpo-40881: Fix unicode_release_interned() (GH-20699)
Use Py_SET_REFCNT() in unicode_release_interned().
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index e69bf01..df10888 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -15669,13 +15669,13 @@
}
switch (PyUnicode_CHECK_INTERNED(s)) {
case SSTATE_INTERNED_IMMORTAL:
- Py_REFCNT(s) += 1;
+ Py_SET_REFCNT(s, Py_REFCNT(s) + 1);
#ifdef INTERNED_STATS
immortal_size += PyUnicode_GET_LENGTH(s);
#endif
break;
case SSTATE_INTERNED_MORTAL:
- Py_REFCNT(s) += 2;
+ Py_SET_REFCNT(s, Py_REFCNT(s) + 2);
#ifdef INTERNED_STATS
mortal_size += PyUnicode_GET_LENGTH(s);
#endif