summaryrefslogtreecommitdiffstats
path: root/Objects
diff options
context:
space:
mode:
authorBarry Warsaw <barry@python.org>2016-01-11 18:24:02 (GMT)
committerBarry Warsaw <barry@python.org>2016-01-11 18:24:02 (GMT)
commit885e1939beb3ab95cc4e06d86815261256cd1d03 (patch)
treeaf25535d6f8ee1015d130075fcc25d37c979333f /Objects
parentb4b8a0ef3e901a4d1babccecae54d6f4939f0dc9 (diff)
downloadcpython-885e1939beb3ab95cc4e06d86815261256cd1d03.zip
cpython-885e1939beb3ab95cc4e06d86815261256cd1d03.tar.gz
cpython-885e1939beb3ab95cc4e06d86815261256cd1d03.tar.bz2
Issue #22995: [UPDATE] Comment out the one of the pickleability tests in
_PyObject_GetState() due to regressions observed in Cython-based projects.
Diffstat (limited to 'Objects')
-rw-r--r--Objects/typeobject.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/Objects/typeobject.c b/Objects/typeobject.c
index 2e68043..ff4ae11 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -3866,6 +3866,14 @@ _PyObject_GetState(PyObject *obj, int required)
}
assert(slotnames == Py_None || PyList_Check(slotnames));
+#if 0
+ /* 2016-01-11 barry - This clause breaks at least three packages which
+ rely on Cython: kivy, pysam, and s3ql. Cython may be doing
+ something funny under the hood, but as this is clearly a regression
+ and the rationale for this prohibition is suspect, I am commenting
+ this out. Perhaps it should just be removed. See issue #22995 for
+ details.
+ */
if (required) {
Py_ssize_t basicsize = PyBaseObject_Type.tp_basicsize;
if (obj->ob_type->tp_dictoffset)
@@ -3883,6 +3891,7 @@ _PyObject_GetState(PyObject *obj, int required)
return NULL;
}
}
+#endif
if (slotnames != Py_None && Py_SIZE(slotnames) > 0) {
PyObject *slots;