Hi, I had some truble finding a stupid bug I made. The code looked somewhat like this: TFile *tf=new TFile("test.root"); t=(TTree *) tf->Get("ntuple"); [ use Tree ] delete t; <<<<<<<<<<<<<< and then far away in a different Library: TFile *tf = (TFile*)gROOT->GetListOfFiles()->FindObject("test.root"); if(!tf) TFile *tf=new TFile("test.root"); t=(TTree *) tf->Get("ntuple"); [use t] .... crash So I asked myself: why should this dammn line crash? After some debugging I found the above error. But is it really an error? Why should calling a destructor on an ntuple out of a read-only file matter at all. Why does closing and reopening the file after deleting t not help? What is there lingering around in the system? I think this is a again a case of: This should be fixed in root if root is supposed to be foolproof. Cheers, Birger /------------------------------------------------------------\ | Birger Koblitz koblitz@mail.desy.de | | Max-Planck-Institut fuer Physik | | (Werner Heisenberg-Institut) | | DESY-FH1K Tel. (40) 8998-3971 | | Notkestr. 85 | | D-22603 HAMBURG | \------------------------------------------------------------/
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:40 MET