Remove locking part of new buffer protocol.
This commit is contained in:
parent
711c9e954e
commit
0144f27602
|
@ -183,7 +183,6 @@ typedef void (*releasebufferproc)(PyObject *, Py_buffer *);
|
||||||
#define PyBUF_WRITABLE 0x0001
|
#define PyBUF_WRITABLE 0x0001
|
||||||
/* we used to include an E, backwards compatible alias */
|
/* we used to include an E, backwards compatible alias */
|
||||||
#define PyBUF_WRITEABLE PyBUF_WRITABLE
|
#define PyBUF_WRITEABLE PyBUF_WRITABLE
|
||||||
#define PyBUF_LOCK 0x0002
|
|
||||||
#define PyBUF_FORMAT 0x0004
|
#define PyBUF_FORMAT 0x0004
|
||||||
#define PyBUF_ND 0x0008
|
#define PyBUF_ND 0x0008
|
||||||
#define PyBUF_STRIDES (0x0010 | PyBUF_ND)
|
#define PyBUF_STRIDES (0x0010 | PyBUF_ND)
|
||||||
|
@ -194,25 +193,15 @@ typedef void (*releasebufferproc)(PyObject *, Py_buffer *);
|
||||||
|
|
||||||
#define PyBUF_CONTIG (PyBUF_ND | PyBUF_WRITABLE)
|
#define PyBUF_CONTIG (PyBUF_ND | PyBUF_WRITABLE)
|
||||||
#define PyBUF_CONTIG_RO (PyBUF_ND)
|
#define PyBUF_CONTIG_RO (PyBUF_ND)
|
||||||
#define PyBUF_CONTIG_LCK (PyBUF_ND | PyBUF_LOCK)
|
|
||||||
#define PyBUF_CONTIG_XLCK (PyBUF_ND | PyBUF_LOCK | PyBUF_WRITABLE)
|
|
||||||
|
|
||||||
#define PyBUF_STRIDED (PyBUF_STRIDES | PyBUF_WRITABLE)
|
#define PyBUF_STRIDED (PyBUF_STRIDES | PyBUF_WRITABLE)
|
||||||
#define PyBUF_STRIDED_RO (PyBUF_STRIDES)
|
#define PyBUF_STRIDED_RO (PyBUF_STRIDES)
|
||||||
#define PyBUF_STRIDED_LCK (PyBUF_STRIDES | PyBUF_LOCK)
|
|
||||||
#define PyBUF_STRIDED_XLCK (PyBUF_STRIDES | PyBUF_LOCK | PyBUF_WRITABLE)
|
|
||||||
|
|
||||||
#define PyBUF_RECORDS (PyBUF_STRIDES | PyBUF_WRITABLE | PyBUF_FORMAT)
|
#define PyBUF_RECORDS (PyBUF_STRIDES | PyBUF_WRITABLE | PyBUF_FORMAT)
|
||||||
#define PyBUF_RECORDS_RO (PyBUF_STRIDES | PyBUF_FORMAT)
|
#define PyBUF_RECORDS_RO (PyBUF_STRIDES | PyBUF_FORMAT)
|
||||||
#define PyBUF_RECORDS_LCK (PyBUF_STRIDES | PyBUF_LOCK | PyBUF_FORMAT)
|
|
||||||
#define PyBUF_RECORDS_XLCK (PyBUF_STRIDES | PyBUF_LOCK | PyBUF_WRITABLE \
|
|
||||||
| PyBUF_FORMAT)
|
|
||||||
|
|
||||||
#define PyBUF_FULL (PyBUF_INDIRECT | PyBUF_WRITABLE | PyBUF_FORMAT)
|
#define PyBUF_FULL (PyBUF_INDIRECT | PyBUF_WRITABLE | PyBUF_FORMAT)
|
||||||
#define PyBUF_FULL_RO (PyBUF_INDIRECT | PyBUF_FORMAT)
|
#define PyBUF_FULL_RO (PyBUF_INDIRECT | PyBUF_FORMAT)
|
||||||
#define PyBUF_FULL_LCK (PyBUF_INDIRECT | PyBUF_LOCK | PyBUF_FORMAT)
|
|
||||||
#define PyBUF_FULL_XLCK (PyBUF_INDIRECT | PyBUF_LOCK | PyBUF_WRITABLE \
|
|
||||||
| PyBUF_FORMAT)
|
|
||||||
|
|
||||||
|
|
||||||
#define PyBUF_READ 0x100
|
#define PyBUF_READ 0x100
|
||||||
|
|
|
@ -2502,11 +2502,6 @@ static int CData_NewGetBuffer(PyObject *_self, Py_buffer *view, int flags)
|
||||||
Py_ssize_t i;
|
Py_ssize_t i;
|
||||||
|
|
||||||
if (view == NULL) return 0;
|
if (view == NULL) return 0;
|
||||||
if (((flags & PyBUF_LOCK) == PyBUF_LOCK)) {
|
|
||||||
PyErr_SetString(PyExc_BufferError,
|
|
||||||
"Cannot lock this object.");
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
view->buf = self->b_ptr;
|
view->buf = self->b_ptr;
|
||||||
view->len = self->b_size;
|
view->len = self->b_size;
|
||||||
|
|
|
@ -685,12 +685,6 @@ PyBuffer_FillInfo(Py_buffer *view, void *buf, Py_ssize_t len,
|
||||||
int readonly, int flags)
|
int readonly, int flags)
|
||||||
{
|
{
|
||||||
if (view == NULL) return 0;
|
if (view == NULL) return 0;
|
||||||
if (((flags & PyBUF_LOCK) == PyBUF_LOCK) &&
|
|
||||||
readonly != 0) {
|
|
||||||
PyErr_SetString(PyExc_BufferError,
|
|
||||||
"Cannot lock this object.");
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
if (((flags & PyBUF_WRITABLE) == PyBUF_WRITABLE) &&
|
if (((flags & PyBUF_WRITABLE) == PyBUF_WRITABLE) &&
|
||||||
(readonly == 1)) {
|
(readonly == 1)) {
|
||||||
PyErr_SetString(PyExc_BufferError,
|
PyErr_SetString(PyExc_BufferError,
|
||||||
|
|
Loading…
Reference in New Issue