New issue 2453: PyObject_GetBuffer Regression https://bitbucket.org/pypy/pypy/issues/2453/pyobject_getbuffer-regression
eric s: There's a regression in PyObject_GetBuffer between 5.3.x and 5.4.x, and still appearing in 5.6.x, noticed in testing on the Pillow project. The core failure is "TypeError: PyPy does not yet implement the new buffer interface" when passing a string into PyObject_GetBuffer. The following reproduction is the clearest Pillow code, but due to a lack of catching the error, it continues and later throws a different error. Using either Pillow 3.4.2 or current master, the following code succeeds in 5.3 but not in 5.4 ``` #!python from PIL import ImagePath import array arr = array.array("f", [0, 1]) p = ImagePath.Path(arr.tostring()) ``` The line where this code diverges is in Pillow's _imaging.c, ``` if (PyObject_CheckBuffer(buffer)) { return PyObject_GetBuffer(buffer, view, PyBUF_SIMPLE); } ``` This call succeeds in 5.3 and fails in 5.4, returning a -1. It succeeds in CPython 2.7. This is a travis run triggering this bug: https://travis-ci.org/python-pillow/Pillow/jobs/184160459 Pillow is working around this by actually handling the error: https://github.com/python-pillow/Pillow/pull/2294 _______________________________________________ pypy-issue mailing list pypy-issue@python.org https://mail.python.org/mailman/listinfo/pypy-issue