[PyKDE] Abstract annotation and deleting objects

James Emerton james at emdata.net
Thu Mar 24 01:07:56 GMT 2005


If a sip specification marks a class with the 'Abstract' annotation, 
the CLASS_CANNOT_CREATE bit is set.  This can also be caused by the 
inclusion of pure virtual methods.

The effect of the CLASS_CANNOT_CREATE bit is to set td_init AND 
td_dealloc to 0 in the generated sipTypeDef.  This causes factory 
methods returning pointers to abstract interfaces to leak memory.

I am going to attempt to patch this, but I still don't know the SIP 
code very well at all.  Anyone know any reason why always generating 
the dealloc_CLASS function might be a bad idea?

James

--
This is not my home; the cats just let me stay here.




More information about the PyQt mailing list