Skip to content

Commit 7be30ce

Browse files
committed
Sync memoryobject.c with CPython
1 parent c3057f3 commit 7be30ce

File tree

5 files changed

+2835
-109
lines changed

5 files changed

+2835
-109
lines changed

graalpython/com.oracle.graal.python.cext/include/memoryobject.h

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* Copyright (c) 2018, 2023, Oracle and/or its affiliates.
1+
/* Copyright (c) 2018, 2024, Oracle and/or its affiliates.
22
* Copyright (C) 1996-2017 Python Software Foundation
33
*
44
* Licensed under the PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
@@ -21,9 +21,9 @@ PyAPI_DATA(PyTypeObject) PyMemoryView_Type;
2121

2222
#ifndef Py_LIMITED_API
2323
/* Get a pointer to the memoryview's private copy of the exporter's buffer. */
24-
#define PyMemoryView_GET_BUFFER(op) (_PyMemoryView_GetBuffer((PyObject *)(op)))
24+
#define PyMemoryView_GET_BUFFER(op) (&((PyMemoryViewObject *)(op))->view)
2525
/* Get a pointer to the exporting object (this may be NULL!). */
26-
#define PyMemoryView_GET_BASE(op) (_PyMemoryView_GetBuffer((PyObject *)(op))->obj)
26+
#define PyMemoryView_GET_BASE(op) (((PyMemoryViewObject *)(op))->view.obj)
2727
#endif
2828

2929
PyAPI_FUNC(PyObject *) PyMemoryView_FromObject(PyObject *base);
@@ -70,10 +70,6 @@ typedef struct {
7070
PyObject *weakreflist;
7171
Py_ssize_t ob_array[1]; /* shape, strides, suboffsets */
7272
} PyMemoryViewObject;
73-
74-
75-
PyAPI_FUNC(Py_buffer *) _PyMemoryView_GetBuffer(PyObject *op);
76-
7773
#endif
7874

7975
#ifdef __cplusplus

graalpython/com.oracle.graal.python.cext/src/capi.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -278,8 +278,8 @@ int bytearray_getbuffer(PyByteArrayObject *obj, Py_buffer *view, int flags);
278278
void bytearray_releasebuffer(PyByteArrayObject *obj, Py_buffer *view);
279279

280280
/* MEMORYVIEW */
281-
int memoryview_getbuffer(PyMemoryViewObject *self, Py_buffer *view, int flags);
282-
void memoryview_releasebuffer(PyMemoryViewObject *self, Py_buffer *view);
281+
int memory_getbuf(PyMemoryViewObject *self, Py_buffer *view, int flags);
282+
void memory_releasebuf(PyMemoryViewObject *self, Py_buffer *view);
283283

284284
static void initialize_bufferprocs() {
285285
static PyBufferProcs bytes_as_buffer = {
@@ -297,8 +297,8 @@ static void initialize_bufferprocs() {
297297
GraalPy_set_PyTypeObject_tp_as_buffer(&PyByteArray_Type, &bytearray_as_buffer);
298298

299299
static PyBufferProcs memory_as_buffer = {
300-
(getbufferproc)memoryview_getbuffer, /* bf_getbuffer */
301-
(releasebufferproc)memoryview_releasebuffer, /* bf_releasebuffer */
300+
(getbufferproc)memory_getbuf, /* bf_getbuffer */
301+
(releasebufferproc)memory_releasebuf, /* bf_releasebuffer */
302302
};
303303
PyMemoryView_Type.tp_as_buffer = &memory_as_buffer;
304304
GraalPy_set_PyTypeObject_tp_as_buffer(&PyMemoryView_Type, &memory_as_buffer);

0 commit comments

Comments
 (0)