@@ -1651,7 +1651,6 @@ TPythonInterface=class(TDynamicDll)
16511651 PyObject_GC_Del:procedure (ob:PPyObject); cdecl;
16521652 PyObject_GC_Track:procedure (ob:PPyObject); cdecl;
16531653 PyObject_GC_UnTrack:procedure (ob:PPyObject); cdecl;
1654- PyObject_CheckBuffer: function(obj: PPyObject): Integer; cdecl;
16551654 PyObject_GetBuffer: function(obj: PPyObject; view : PPy_buffer; flags: Integer): Integer; cdecl;
16561655 PyObject_CopyData: function (dest: PPyObject; src: PPyObject): Integer; cdecl;
16571656 PySequence_Check:function (ob:PPyObject):integer; cdecl;
@@ -1846,6 +1845,7 @@ TPythonInterface=class(TDynamicDll)
18461845 function PyUnicode_CheckExact ( obj : PPyObject ) : Boolean;
18471846 function PyType_IS_GC (t : PPyTypeObject ) : Boolean;
18481847 function PyObject_IS_GC ( obj : PPyObject ) : Boolean;
1848+ function PyObject_CheckBuffer (obj: PPyObject): Boolean;
18491849 function PyWeakref_Check ( obj : PPyObject ) : Boolean;
18501850 function PyWeakref_CheckRef ( obj : PPyObject ) : Boolean;
18511851 function PyWeakref_CheckProxy ( obj : PPyObject ) : Boolean;
@@ -3929,7 +3929,6 @@ procedure TPythonInterface.MapDll;
39293929 PyObject_GC_Del := Import (' PyObject_GC_Del' );
39303930 PyObject_GC_Track := Import (' PyObject_GC_Track' );
39313931 PyObject_GC_UnTrack := Import (' PyObject_GC_UnTrack' );
3932- PyObject_CheckBuffer := Import (' PyObject_CheckBuffer' );
39333932 PyObject_GetBuffer := Import (' PyObject_GetBuffer' );
39343933 PyObject_CopyData := Import (' PyObject_CopyData' );
39353934 PySequence_Check := Import (' PySequence_Check' );
@@ -4243,6 +4242,12 @@ function TPythonInterface.PyObject_IS_GC( obj : PPyObject ) : Boolean;
42434242 (not Assigned(obj^.ob_type^.tp_is_gc) or (obj^.ob_type^.tp_is_gc(obj) = 1 ));
42444243end ;
42454244
4245+ function TPythonInterface.PyObject_CheckBuffer (obj: PPyObject): Boolean;
4246+ begin
4247+ Result := Assigned(obj^.ob_type^.tp_as_buffer) and
4248+ Assigned(obj^.ob_type^.tp_as_buffer.bf_getbuffer);
4249+ end ;
4250+
42464251function TPythonInterface.PyWeakref_Check ( obj : PPyObject ) : Boolean;
42474252begin
42484253 Result := Assigned( obj ) and (PyWeakref_CheckRef(obj) or PyWeakref_CheckProxy(obj));
0 commit comments