Hello Rooters, I hope somebody can help me, cause I've been working on this segmentation violation for a few days now ! The code below should read a TFile containing a TNtuple (1st key) and a TH2F. If the ntuple is found, it is chained. All objects are stored in a TList. TROOT root("QuikPlot", "QuikPlot"); int main(int argc, char **argv) { TApplication theApp("App", &argc, argv); TChain *fNtuple=NULL; const TString tntStr("TNtuple"); TList *fObjectsInFile=new TList(); TString filename("/data/Colin/Root_Monitoring/Tfiles/7389.root"); TFile temp(filename,"READ","Temporary File"); TIter next(temp.GetListOfKeys()); TKey *key; while (key = (TKey*) next()){ fObjectsInFile->Add(key->ReadObj()); <=== A cout<<key->GetName()<<endl; if(tntStr.CompareTo(key->GetClassName()) == 0){ fNtuple = new TChain(key->GetName()); <=== B cout << "Test Message: added ntuple in " << filename << " to chain" <<endl; } } theApp.Run(); return 0; } I get the segv in line A only if line B is executed.... I have root 2.22/10, redhat 5.1 egcs 1.1.1, and absolutely no clue ! cheers, Colin
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:22 MET