mirror of
https://github.com/python/cpython.git
synced 2025-11-01 10:45:30 +00:00
bpo-35059: Cast void* to PyObject* (GH-10650)
Don't pass void* to Python macros: use _PyObject_CAST().
This commit is contained in:
parent
b37672daf6
commit
a42de742e7
4 changed files with 17 additions and 11 deletions
|
|
@ -1847,20 +1847,21 @@ _PyGC_Dump(PyGC_Head *g)
|
|||
functions must always be available */
|
||||
|
||||
void
|
||||
PyObject_GC_Track(void *op)
|
||||
PyObject_GC_Track(void *op_raw)
|
||||
{
|
||||
PyObject *obj = (PyObject *)op;
|
||||
PyObject *op = _PyObject_CAST(op_raw);
|
||||
if (_PyObject_GC_IS_TRACKED(op)) {
|
||||
_PyObject_ASSERT_FAILED_MSG(op,
|
||||
"object already tracked "
|
||||
"by the garbage collector");
|
||||
}
|
||||
_PyObject_GC_TRACK(obj);
|
||||
_PyObject_GC_TRACK(op);
|
||||
}
|
||||
|
||||
void
|
||||
PyObject_GC_UnTrack(void *op)
|
||||
PyObject_GC_UnTrack(void *op_raw)
|
||||
{
|
||||
PyObject *op = _PyObject_CAST(op_raw);
|
||||
/* Obscure: the Py_TRASHCAN mechanism requires that we be able to
|
||||
* call PyObject_GC_UnTrack twice on an object.
|
||||
*/
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue