On 24 March 2011 13:43, Barry Smith <[email protected]> wrote:
o now MatNullSpace instances cannot be freed with PetscObjectDestroy()... This change broke bad petsc4py Python+PETSc refcounting management. BTW, PetscObjectDestroy() does not take a pointer... And IMHO PetscHeaderDestroy should also take a pointer...
Thank you for the explanation. petsc4py relies on PetscObjectDestroy() which won't work when some destroys take & and some don't. I didn't know you needed PetscObjectDestroy() to always work.
Well, long ago you said "this is polymorphism ..." :-)
The correction solution is to switch to using the & in all destroys. It sounds like this has to happen sooner rather than later.
OK. Thanks! -- Lisandro Dalcin --------------- CIMEC (INTEC/CONICET-UNL) Predio CONICET-Santa Fe Colectora RN 168 Km 472, Paraje El Pozo 3000 Santa Fe, Argentina Tel: +54-342-4511594 (ext 1011) Tel/Fax: +54-342-4511169
participants (1)
-
Lisandro Dalcin