Backported PyCapsule from 3.1, and converted most uses of
CObject to PyCapsule.
diff --git a/PC/VS7.1/pythoncore.vcproj b/PC/VS7.1/pythoncore.vcproj
index 98c260f..3ed5b8e 100644
--- a/PC/VS7.1/pythoncore.vcproj
+++ b/PC/VS7.1/pythoncore.vcproj
@@ -461,6 +461,9 @@
RelativePath="..\..\Objects\bytes_methods.c">
</File>
<File
+ RelativePath="..\..\Objects\capsule.c">
+ </File>
+ <File
RelativePath="..\..\Objects\cellobject.c">
</File>
<File
diff --git a/PC/VS8.0/pythoncore.vcproj b/PC/VS8.0/pythoncore.vcproj
index 31c7992..ba8b626 100644
--- a/PC/VS8.0/pythoncore.vcproj
+++ b/PC/VS8.0/pythoncore.vcproj
@@ -855,6 +855,10 @@
>
</File>
<File
+ RelativePath="..\..\Include\pycapsule.h"
+ >
+ </File>
+ <File
RelativePath="..\..\Include\pyctype.h"
>
</File>
@@ -1419,6 +1423,10 @@
>
</File>
<File
+ RelativePath="..\..\Objects\capsule.c"
+ >
+ </File>
+ <File
RelativePath="..\..\Objects\cellobject.c"
>
</File>
diff --git a/PC/os2emx/python27.def b/PC/os2emx/python27.def
index d1c38dc..5477cd2 100644
--- a/PC/os2emx/python27.def
+++ b/PC/os2emx/python27.def
@@ -210,6 +210,19 @@
"PyInstance_Type"
"PyMethod_Type"
+; From python27_s.lib(capsule)
+ "PyCapsule_GetContext"
+ "PyCapsule_GetDestructor"
+ "PyCapsule_GetName"
+ "PyCapsule_GetPointer"
+ "PyCapsule_Import"
+ "PyCapsule_IsValid"
+ "PyCapsule_New"
+ "PyCapsule_SetContext"
+ "PyCapsule_SetDestructor"
+ "PyCapsule_SetName"
+ "PyCapsule_SetPointer"
+
; From python27_s.lib(cobject)
"PyCObject_FromVoidPtr"
"PyCObject_FromVoidPtrAndDesc"
diff --git a/PC/os2vacpp/python.def b/PC/os2vacpp/python.def
index e8064f3..76d56cd 100644
--- a/PC/os2vacpp/python.def
+++ b/PC/os2vacpp/python.def
@@ -6,6 +6,7 @@
EXPORTS
; Data
PyCFunction_Type
+ PyCapsule_Type
PyCObject_Type
PyClass_Type
PyCode_Type
@@ -75,6 +76,7 @@
_Py_TrueStruct
_Py_ZeroStruct
_Py_abstract_hack
+ _Py_capsule_hack
_Py_cobject_hack
_Py_re_syntax
_Py_re_syntax_table
@@ -89,6 +91,17 @@
PyCFunction_GetFunction
PyCFunction_GetSelf
PyCFunction_New
+ PyCapsule_GetContext
+ PyCapsule_GetDestructor
+ PyCapsule_GetName
+ PyCapsule_GetPointer
+ PyCapsule_Import
+ PyCapsule_IsValid
+ PyCapsule_New
+ PyCapsule_SetContext
+ PyCapsule_SetDestructor
+ PyCapsule_SetName
+ PyCapsule_SetPointer
PyCObject_AsVoidPtr
PyCObject_FromVoidPtrAndDesc
PyCObject_FromVoidPtr