To clarify, responsibility for the object's deletion has been transferred to C++ with SIP's <code>api_transfer_to(ptr, Py_None)</code>, so I can guarantee that at least the C++ object's destructor gets called, and SIP calls the Python destructor during that. The cleanup <i>has</i> to happen before or very early during that destructor, or there's no way to actually do the cleanup.
<p>
I have had a look through the C++ code SIP spits out, though, and it seems the Python destructor its calling is <code>__dtor__</code> rather than the regular <code>__del__</code>, so switching to that might well solve my issue.

        
        
        
<br/><hr align="left" width="300" />
Sent from the <a href="http://python.6.x6.nabble.com/PyQt-f1792048.html">PyQt mailing list archive</a> at Nabble.com.<br/>