mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
#5947: add PendingDeprecationWarning to PyCObject functions.
This commit is contained in:
parent
30f4a4c505
commit
5776c1623c
1 changed files with 16 additions and 0 deletions
|
@ -9,11 +9,23 @@
|
|||
typedef void (*destructor1)(void *);
|
||||
typedef void (*destructor2)(void *, void*);
|
||||
|
||||
|
||||
static int deprecation_exception(void)
|
||||
{
|
||||
return PyErr_WarnEx(PyExc_PendingDeprecationWarning,
|
||||
"The CObject API is deprecated as of Python 3.1. "
|
||||
"Please convert to using the Capsule API.", 1);
|
||||
}
|
||||
|
||||
PyObject *
|
||||
PyCObject_FromVoidPtr(void *cobj, void (*destr)(void *))
|
||||
{
|
||||
PyCObject *self;
|
||||
|
||||
if (deprecation_exception()) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
self = PyObject_NEW(PyCObject, &PyCObject_Type);
|
||||
if (self == NULL)
|
||||
return NULL;
|
||||
|
@ -30,6 +42,10 @@ PyCObject_FromVoidPtrAndDesc(void *cobj, void *desc,
|
|||
{
|
||||
PyCObject *self;
|
||||
|
||||
if (deprecation_exception()) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!desc) {
|
||||
PyErr_SetString(PyExc_TypeError,
|
||||
"PyCObject_FromVoidPtrAndDesc called with null"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue