We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 6120aef commit afea804Copy full SHA for afea804
1 file changed
Objects/setobject.c
@@ -1057,21 +1057,13 @@ setiter_len(PyObject *op, PyObject *Py_UNUSED(ignored))
1057
setiterobject *si = (setiterobject*)op;
1058
Py_ssize_t len = 0;
1059
1060
-#ifdef Py_GIL_DISABLED
1061
PySetObject *so = si->si_set;
1062
- assert(so != NULL);
1063
1064
- Py_BEGIN_CRITICAL_SECTION2(op, so);
1065
- if (si->si_pos >= 0 && si->si_used == so->used) {
1066
- len = si->len;
1067
- }
1068
- Py_END_CRITICAL_SECTION2();
1069
-#else
1070
- if (si->si_set != NULL && si->si_used == si->si_set->used) {
1071
+ Py_BEGIN_CRITICAL_SECTION(op);
+ if (si->si_pos >= 0 && si->si_used == FT_ATOMIC_LOAD_SSIZE_RELAXED(so->used)) {
+len = si->len;
1072
}
1073
-#endif
1074
-
+ Py_END_CRITICAL_SECTION();
1075
return PyLong_FromSsize_t(len);
1076
1077
0 commit comments