Skip to content

Commit 7791bf0

Browse files
committed
remove obsolete buffer proc storing
1 parent e976a81 commit 7791bf0

File tree

4 files changed

+7
-42
lines changed

4 files changed

+7
-42
lines changed

graalpython/com.oracle.graal.python.cext/modules/_mmap.c

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,14 @@ int mmap_getbuffer(PyObject *self, Py_buffer *view, int flags) {
5151

5252
static PyObject* mmap_init_bufferprotocol(PyObject* self, PyObject* mmap_type) {
5353
assert(PyType_Check(mmap_type));
54-
initialize_type_structure(&mmap_object_type, (PyTypeObject*)mmap_type, polyglot_mmap_object_typeid());
5554

56-
polyglot_invoke(PY_TRUFFLE_CEXT, "PyTruffle_SetBufferProcs", native_to_java(mmap_type), (getbufferproc) mmap_getbuffer, (releasebufferproc) NULL);
55+
initialize_type_structure(&mmap_object_type, (PyTypeObject*)mmap_type, polyglot_mmap_object_typeid());
56+
static PyBufferProcs mmap_as_buffer = {
57+
(getbufferproc)mmap_getbuffer,
58+
(releasebufferproc)NULL,
59+
};
60+
mmap_object_type.tp_as_buffer = &mmap_as_buffer;
61+
5762
return Py_None;
5863
}
5964

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

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -322,11 +322,6 @@ static void initialize_globals() {
322322
}
323323

324324
static void initialize_bufferprocs() {
325-
polyglot_invoke(PY_TRUFFLE_CEXT, "PyTruffle_SetBufferProcs", native_to_java((PyObject*)&PyBytes_Type), (getbufferproc)bytes_buffer_getbuffer, (releasebufferproc)NULL);
326-
polyglot_invoke(PY_TRUFFLE_CEXT, "PyTruffle_SetBufferProcs", native_to_java((PyObject*)&PyByteArray_Type), (getbufferproc)bytearray_getbuffer, (releasebufferproc)bytearray_releasebuffer);
327-
polyglot_invoke(PY_TRUFFLE_CEXT, "PyTruffle_SetBufferProcs", native_to_java((PyObject*)&PyBuffer_Type), (getbufferproc)bufferdecorator_getbuffer, (releasebufferproc)NULL);
328-
polyglot_invoke(PY_TRUFFLE_CEXT, "PyTruffle_SetBufferProcs", native_to_java((PyObject*)&PyMemoryView_Type), (getbufferproc)memoryview_getbuffer, (releasebufferproc)memoryview_releasebuffer);
329-
330325
static PyBufferProcs bytes_as_buffer = {
331326
(getbufferproc)bytes_buffer_getbuffer, /* bf_getbuffer */
332327
(releasebufferproc)NULL, /* bf_releasebuffer */

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/modules/cext/PythonCextBuiltins.java

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1149,23 +1149,6 @@ static Object doPythonObject(PythonClassNativeWrapper klass, Object ptr,
11491149
}
11501150
}
11511151

1152-
@Builtin(name = "PyTruffle_SetBufferProcs", minNumOfPositionalArgs = 3)
1153-
@GenerateNodeFactory
1154-
abstract static class PyTruffleSetBufferProcs extends PythonTernaryBuiltinNode {
1155-
1156-
@Specialization
1157-
static Object doNativeWrapper(PythonClassNativeWrapper nativeWrapper, Object getBufferProc, Object releaseBufferProc) {
1158-
nativeWrapper.setGetBufferProc(getBufferProc);
1159-
nativeWrapper.setReleaseBufferProc(releaseBufferProc);
1160-
return PNone.NO_VALUE;
1161-
}
1162-
1163-
@Specialization
1164-
static Object doPythonObject(PythonManagedClass obj, Object getBufferProc, Object releaseBufferProc) {
1165-
return doNativeWrapper(obj.getClassNativeWrapper(), getBufferProc, releaseBufferProc);
1166-
}
1167-
}
1168-
11691152
@Builtin(name = "PyMemoryView_FromObject", minNumOfPositionalArgs = 1)
11701153
@GenerateNodeFactory
11711154
abstract static class PyTruffleMemoryViewFromObject extends NativeBuiltin {

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/cext/capi/PythonClassNativeWrapper.java

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,6 @@
5151
*/
5252
public class PythonClassNativeWrapper extends DynamicObjectNativeWrapper.PythonObjectNativeWrapper {
5353
private final CStringWrapper nameWrapper;
54-
private Object getBufferProc;
55-
private Object releaseBufferProc;
5654

5755
private PythonClassNativeWrapper(PythonManagedClass object, String name) {
5856
super(object);
@@ -63,22 +61,6 @@ public CStringWrapper getNameWrapper() {
6361
return nameWrapper;
6462
}
6563

66-
public Object getGetBufferProc() {
67-
return getBufferProc;
68-
}
69-
70-
public void setGetBufferProc(Object getBufferProc) {
71-
this.getBufferProc = getBufferProc;
72-
}
73-
74-
public Object getReleaseBufferProc() {
75-
return releaseBufferProc;
76-
}
77-
78-
public void setReleaseBufferProc(Object releaseBufferProc) {
79-
this.releaseBufferProc = releaseBufferProc;
80-
}
81-
8264
public static PythonClassNativeWrapper wrap(PythonManagedClass obj, String name) {
8365
// important: native wrappers are cached
8466
PythonClassNativeWrapper nativeWrapper = obj.getClassNativeWrapper();

0 commit comments

Comments
 (0)