]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCkalmanFit.cxx
fix for mem leak
[u/mrichter/AliRoot.git] / TPC / AliTPCkalmanFit.cxx
index f40baccdd9efc104bd955330a8631d097afb783f..5e2f5e49c963513f8872da81f80c7f99504b3642 100644 (file)
@@ -605,7 +605,7 @@ void AliTPCkalmanFit::AddCovariance(const char * varName, Double_t sigma){
   //
   //
   //
-  if (fCalibCovar) return;
+  if (!fCalibCovar) return;
   if (!fCalibration) return;
   if (!fCalibration->FindObject(varName)) return;
   Int_t ncalibs = fCalibration->GetEntries();
@@ -778,7 +778,7 @@ AliTrackPointArray * AliTPCkalmanFit::MakePointArrayLinear(Double_t alpha, Doubl
   Int_t npoints=0;
   for (Int_t i=0;i<6;i++) cov[i]=0.001;
   for (Int_t i=0;i<500;i++){    
-    AliTrackPoint point(0, 0, 0, cov, -1,0,0);
+    AliTrackPoint point(0, 0, 0, cov, 0,0,0);
     array.AddPoint(npoints, &point);
     npoints++;
   }
@@ -1007,7 +1007,7 @@ AliTPCkalmanFit *  AliTPCkalmanFit::Test(Int_t ntracks){
        if (ipar0+ipar1==0) continue;
        Double_t param = (gRandom->Rndm()-0.5)*0.5;  // generate random parameters
        char tname[100];
-       sprintf(tname,"tscalingR%d%dSide%d",ipar0,ipar1,iside);
+       snprintf(tname,100,"tscalingR%d%dSide%d",ipar0,ipar1,iside);
        transformation = new AliTPCTransformation(tname,AliTPCTransformation::BitsSide(iside),"TPCscalingRPol",0,0,1);
        transformation->SetParams(0,5*0.25,0,&fpar);
        kalmanFit0->AddCalibration(transformation);
@@ -1296,20 +1296,20 @@ void AliTPCkalmanFit::MakeTreeTrans(TTreeSRedirector *debug, const char *treeNam
              AliTPCTransformation * transform = (AliTPCTransformation *)fCalibration->At(icalib);
              char tname[1000];
              //
-             sprintf(tname,"dx%s=",transform->GetName());
+             snprintf(tname,1000,"dx%s=",transform->GetName());
              adx[icalib] =dxdydz(icalib,0); 
              cstream<<tname<<adx[icalib];
-             sprintf(tname,"dy%s=",transform->GetName());
+             snprintf(tname,1000,"dy%s=",transform->GetName());
              ady[icalib] =dxdydz(icalib,1); 
              cstream<<tname<<ady[icalib];
-             sprintf(tname,"dz%s=",transform->GetName());
+             snprintf(tname,1000,"dz%s=",transform->GetName());
              adz[icalib] =dxdydz(icalib,2); 
              cstream<<tname<<adz[icalib];
              //
-             sprintf(tname,"dr%s=",transform->GetName());
+             snprintf(tname,1000,"dr%s=",transform->GetName());
              adr[icalib] =dxdydz(icalib,3); 
              cstream<<tname<<adr[icalib];
-             sprintf(tname,"rdphi%s=",transform->GetName());
+             snprintf(tname,1000,"rdphi%s=",transform->GetName());
              adrphi[icalib] =dxdydz(icalib,4); 
              cstream<<tname<<adrphi[icalib];
            }
@@ -1319,5 +1319,10 @@ void AliTPCkalmanFit::MakeTreeTrans(TTreeSRedirector *debug, const char *treeNam
     }
     Printf("x0=%f finished",x[0]);
   }
-  
+  delete [] adx;//    = new Double_t[ncalibs];
+  delete [] ady;//    = new Double_t[ncalibs];
+  delete [] adz;//    = new Double_t[ncalibs];
+  delete [] adr;//    = new Double_t[ncalibs];
+  delete [] adrphi;// = new Double_t[ncalibs];
+
 }