[Python-Dev] Assertion in _PyManagedBuffer_FromObject() (original) (raw)
Stefan Krah stefan at bytereef.org
Fri Mar 2 13:55:40 CET 2012
- Previous message: [Python-Dev] Assertion in _PyManagedBuffer_FromObject()
- Next message: [Python-Dev] Assertion in _PyManagedBuffer_FromObject()
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Nick Coghlan <ncoghlan at gmail.com> wrote:
However, given the lack of control, an assert() isn't the appropriate tool here - PyObjectGetBuffer itself should be checking the constraint and then reporting an error if the check fails. Otherwise a misbehaving extension module could trivially crash the Python interpreter by returning a bad Pybuffer.
I'm not so sure. Extension modules that use the C-API in wrong or undocumented ways can always crash the interpreter. This assert() should be triggered in the first unit test of the module. Now, if the module does not have unit tests or they don't test against a new Python version is that really our problem?
Modules do need to be recompiled anyway due to the removal of Py_buffer.smalltable, otherwise they will almost certainly crash.
Perhaps an addition to whatsnew/3.3 would be sufficient.
Stefan Krah
- Previous message: [Python-Dev] Assertion in _PyManagedBuffer_FromObject()
- Next message: [Python-Dev] Assertion in _PyManagedBuffer_FromObject()
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]