Extra Copies of Tree in Files


I have a program that loops over one tree and creates a new tree that is then saved to a file. I inconsistently run into the following problem:
root [0] TFile * f = new TFile(“run-0395–softwareCFD-output.root”)
root [1] f->ls()
TFile** run-0395–softwareCFD-output.root
TFile* run-0395–softwareCFD-output.root
KEY: TTree flt;3 Filtered Data Tree — Comment Description
KEY: TTree flt;2 Filtered Data Tree — Comment Description
KEY: Settings theSettings;1 The Settings from the Builder

Sometimes it appears that I have two copies of the tree saved in the file. A skeleton of the program is as follows:
TChain * inT;
inT= new TChain(“dchan”);

TFile * outFile = new TFile(…)
TTree * outTree = new TTree("…")
//Set Branches
//Main analysis loop

Do I have a bug or does ROOT split its Trees for some reason?