Richard Oudkerk <[email protected]> added the comment:
> Or you could simply Py_INCREF(args) before the Py_XDECREF...
But won't self->args point to a broken object while any callbacks triggered by
Py_XDECREF() are run?
An alternative would be
tmp = self->args;
self->args = args;
Py_INCREF(self->args);
Py_XDECREF(tmp);
As far as I can see the idiom Py_?DECREF(self->...) is rarely safe outside of a
deallocator unless you are sure the pointed to object has a "safe" type (or you
are sure the refcount cannot fall to zero).
----------
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue1692335>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com