summaryrefslogtreecommitdiffstats
path: root/Objects
diff options
context:
space:
mode:
authorBarry Warsaw <barry@python.org>2016-01-11 18:52:23 (GMT)
committerBarry Warsaw <barry@python.org>2016-01-11 18:52:23 (GMT)
commitf65395c8c27170e3ce7b161ec43cf9947bb7f5fe (patch)
tree43c30af0650cb90a3f7ada788b67c5e6439ffe7c /Objects
parentc2ccb73e8abb05087a2c52b6b0a037ce4e1f0d62 (diff)
downloadcpython-f65395c8c27170e3ce7b161ec43cf9947bb7f5fe.zip
cpython-f65395c8c27170e3ce7b161ec43cf9947bb7f5fe.tar.gz
cpython-f65395c8c27170e3ce7b161ec43cf9947bb7f5fe.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 8375f5f..1ddcc59 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -3279,6 +3279,14 @@ reduce_2(PyObject *obj)
if (names == NULL)
goto end;
assert(names == Py_None || PyList_Check(names));
+#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_state) {
Py_ssize_t basicsize = PyBaseObject_Type.tp_basicsize;
if (obj->ob_type->tp_dictoffset)
@@ -3294,6 +3302,7 @@ reduce_2(PyObject *obj)
goto end;
}
}
+#endif
if (names != Py_None) {
slots = PyDict_New();