Hi,
I found some strange behaviour of gObject Table which I don't understand.
Mayeb somebody can comment on it...
If I do:
TObject::SetObjectStat(1);
{ TList *l = new TList; l->Add(new TNamed); l->SetOwner(); delete l; }
gObjectTable->Print();
everything looks like expected.
If I do:
TObject::SetObjectStat(1);
{TList l; l.Add(new TNamed); l.SetOwner(); }
gObjectTable->Print();
the TNamed object seems still to remain in memory.
Moreover if I do this twice only a single TNamed objects seems to be there
instead of the expected two.
If I now quit the interpreter I get a lot of warnings like:
Warning in <TObjectTable::Remove>: 0x737746728 not found at 687763
tested with root 3/05.01 on Darwin and 3.05/07 on linux.
Any idea or explanation? (We try to find a memory leak in our shared
object, but gObjectTable returns all objects which should be automatically
deleted with lists as existing...)
Thomas.
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:08 MET