Problem with TChain

I am doing this:
{
TChain *pre_neus = new TChain(“neus”);
pre_neus->Add("…/pre_tufts/nocuts_neutrino.root");
pre_neus->Add("…/post_tufts/nocuts_neutrino.root");

Int_t pre_header_run;
TBranch *b_pre_header_run = pre_neus->GetBranch(“header_run”);
b_pre_header_run ->SetAddress(&pre_header_run);

Int_t pre_nentries = neus->GetEntries();
cout<<"no of entries in pre tufts "<<pre_nentries<<endl;

  for(int i=0;i<pre_nentries>GetEntry(i);
 }

}
This code crashes after printing out the no of entries. But instead of using the chain, if I use only one root file then everything works. I am using root 5.10/00c.

                                            -thanks Debdatta.

Instead of:

TBranch *b_pre_header_run = pre_neus->GetBranch("header_run"); b_pre_header_run ->SetAddress(&pre_header_run);
do:

pre_neus->SetBranchAddress("header_run",&pre_header_run");
Rene