I have a problem accessing a newly created directory. The following macro
and its output shows the problem. However first closing and then reopening
the file does work. I use redhat 4.2 with root version 2.011.
The problem however does not appear under DEC/OSF1.
Thanks in advance
Hajo.
//--------> t2.C this does not work
{
gROOT.Reset();
file = new TFile("test.root","new");
gDirectory.pwd();
gDirectory.mkdir("ku","Die Kunst");
gDirectory.pwd();
gDirectory.ls();
TObject *obj = gDirectory->Get("ku;1");
printf("%s \n",obj->GetTitle());
gDirectory.pwd();
gDirectory.ls();
}
root [0] .x t2.C
test.root:/
test.root:/
TFile** test.root
TFile* test.root
TDirectory* ku Die Kunst
KEY: TDirectory ku;1 Die Kunst
Die Kunst
test.root:/
TFile** test.root
TFile* test.root
*** Break *** segmentation violation
//-------> t1.C this does work
{
gROOT.Reset();
file = new TFile("test.root","new");
gDirectory.pwd();
gDirectory.mkdir("ku","Die Kunst");
gDirectory.pwd();
gDirectory.ls();
file.Close();
file = new TFile("test.root");
gDirectory.pwd();
gDirectory.ls();
TObject *obj = gDirectory->Get("ku;1");
printf("%s \n",obj->GetTitle());
gDirectory.pwd();
gDirectory.ls();
}
root [2] .x t1.C
test.root:/
test.root:/
TFile** test.root
TFile* test.root
TDirectory* ku Die Kunst
KEY: TDirectory ku;1 Die Kunst
test.root:/
TFile** test.root
TFile* test.root
KEY: TDirectory ku;1 Die Kunst
Die Kunst
test.root:/
TFile** test.root
TFile* test.root
TDirectory* ku Die Kunst
KEY: TDirectory ku;1 Die Kunst