Additional changes for report #70680 AliROOT Coverity DELETE_ARRAY checker fix
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 29 Jul 2010 15:46:15 +0000 (15:46 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 29 Jul 2010 15:46:15 +0000 (15:46 +0000)
HMPID/AliHMPIDReconHTA.cxx
ITS/AliITSSortTrkl.cxx
JETAN/AliEventShape.cxx
JETAN/AliUA1JetFinderV2.cxx
STEER/AliMatrixSparse.cxx
STEER/AliMillePedeRecord.cxx
STEER/AliVertexerTracks.cxx
THbtp/AliGenHBTprocessor.cxx
TPC/AliTPCCalibTCF.cxx
TPC/AliTPCCalibViewer.cxx

index 949dd77..0d9c001 100644 (file)
@@ -91,11 +91,11 @@ void AliHMPIDReconHTA::DeleteVars()const
 //..
 //Delete variables
 //..
-  if(fXClu) delete fXClu;
-  if(fYClu) delete fYClu;
-  if(fPhiPhot) delete fPhiPhot;
-  if(fThetaPhot) delete fThetaPhot;
-  if(fClCk) delete fClCk;
+  if(fXClu) delete [] fXClu;
+  if(fYClu) delete [] fYClu;
+  if(fPhiPhot) delete [] fPhiPhot;
+  if(fThetaPhot) delete [] fThetaPhot;
+  if(fClCk) delete [] fClCk;
 }
 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Bool_t AliHMPIDReconHTA::CkovHiddenTrk(AliESDtrack *pTrk,TClonesArray *pCluLst,Int_t index, Double_t nmean)
index aee3963..a78cd2f 100644 (file)
@@ -121,9 +121,9 @@ AliITSSortTrkl::~AliITSSortTrkl(){
   }
   DeleteClustersTmp();
   if(fClusters){
-    for(Int_t i=0;i<fNoClus;i++)delete []fClusters[i];
-    delete fClusters;
-    delete []fSize;
+    for(Int_t i=0;i<fNoClus;i++)delete [] fClusters[i];
+    delete [] fClusters;
+    delete [] fSize;
   } 
 }
 
@@ -136,7 +136,7 @@ void AliITSSortTrkl::DeleteClustersTmp(){
        delete []fClustersTmp[i];
       }
     }
-    delete fClustersTmp;
+    delete [] fClustersTmp;
     fClustersTmp = NULL;
   }
 }
index 09485dd..a91e246 100644 (file)
@@ -185,7 +185,6 @@ TArrayD * AliEventShape::GetThrustParamMC(AliMCEvent* mcEvent, Int_t  nstudymin,
   evsh->AddAt(recoil, 2);
 
 
-  delete evsh;
   delete [] ptT;
   delete [] pxT;
   delete [] pyT;
index 913cf7b..76a4743 100644 (file)
@@ -125,21 +125,21 @@ void AliUA1JetFinderV2::FindJetsC()
   Double_t dEtTotal = (TMath::Sqrt(npart))*TMath::Sqrt(meanpt * meanpt + ptRMS*ptRMS);
   
   // arrays to hold jets
-  Float_t* etaJet    = new Float_t[30];  // eta jet
-  Float_t* phiJet    = new Float_t[30];  // phi jet
-  Float_t* etJet     = new Float_t[30];  // et jet
-  Float_t* etsigJet  = new Float_t[30];  // signal et in jet
-  Float_t* etallJet  = new Float_t[30];  // total et in jet (tmp variable)
-  Int_t*   ncellsJet = new Int_t[30];
-  Int_t*   multJet   = new Int_t[30];
+  Float_t etaJet[30];  // eta jet
+  Float_t phiJet[30];  // phi jet
+  Float_t etJet[30];  // et jet
+  Float_t etsigJet[30];  // signal et in jet
+  Float_t etallJet[30];  // total et in jet (tmp variable)
+  Int_t   ncellsJet[30];
+  Int_t   multJet[30];
   //--- Added for jet reordering at the end of the jet finding procedure
-  Float_t* etaJetOk    = new Float_t[30];
-  Float_t* phiJetOk    = new Float_t[30];
-  Float_t* etJetOk     = new Float_t[30];
-  Float_t* etsigJetOk  = new Float_t[30];  // signal et in jet
-  Float_t* etallJetOk  = new Float_t[30];  // total et in jet (tmp variable)
-  Int_t*   ncellsJetOk = new Int_t[30];
-  Int_t*   multJetOk   = new Int_t[30];
+  Float_t etaJetOk[30];
+  Float_t phiJetOk[30];
+  Float_t etJetOk[30];
+  Float_t etsigJetOk[30];  // signal et in jet
+  Float_t etallJetOk[30];  // total et in jet (tmp variable)
+  Int_t   ncellsJetOk[30];
+  Int_t   multJetOk[30];
   //--------------------------
   Int_t nJets; // to hold number of jets found by algorithm
   Int_t nj;    // number of jets accepted
@@ -266,26 +266,13 @@ void AliUA1JetFinderV2::FindJetsC()
   delete[] cFlagT;
   delete[] sFlagT;
   delete[] injet;
-  delete[] hPtTotal;
-  delete[] etaJet;
-  delete[] phiJet;
-  delete[] etJet;
-  delete[] etsigJet;
-  delete[] etallJet;
-  delete[] ncellsJet;
-  delete[] multJet;
+  delete hPtTotal;
   delete[] idxjets;
+  delete[] idx;
+
   delete[] percentage;
   delete[] ncells;
   delete[] mult;
-  //--- Added for jet reordering
-  delete [] etaJetOk;
-  delete [] phiJetOk;
-  delete [] etJetOk;
-  delete [] etsigJetOk;
-  delete [] etallJetOk;
-  delete [] ncellsJetOk;
-  delete [] multJetOk;
   //--------------------------
 
 }
@@ -516,21 +503,21 @@ void AliUA1JetFinderV2::FindJets()
   Double_t dEtTotal = (TMath::Sqrt(npart))*TMath::Sqrt(meanpt * meanpt + ptRMS*ptRMS);
 
   // arrays to hold jets
-  Float_t* etaJet    = new Float_t[30];
-  Float_t* phiJet    = new Float_t[30];
-  Float_t* etJet     = new Float_t[30];
-  Float_t* etsigJet  = new Float_t[30]; //signal et in jet
-  Float_t* etallJet  = new Float_t[30];  // total et in jet (tmp variable)
-  Int_t*   ncellsJet = new Int_t[30];
-  Int_t*   multJet   = new Int_t[30];
+  Float_t etaJet[30];
+  Float_t phiJet[30];
+  Float_t etJet[30];
+  Float_t etsigJet[30]; //signal et in jet
+  Float_t etallJet[30];  // total et in jet (tmp variable)
+  Int_t   ncellsJet[30];
+  Int_t   multJet[30];
   //--- Added by me for jet reordering at the end of the jet finding procedure
-  Float_t* etaJetOk    = new Float_t[30];
-  Float_t* phiJetOk    = new Float_t[30];
-  Float_t* etJetOk     = new Float_t[30];
-  Float_t* etsigJetOk  = new Float_t[30]; //signal et in jet
-  Float_t* etallJetOk  = new Float_t[30];  // total et in jet (tmp variable)
-  Int_t*   ncellsJetOk = new Int_t[30];
-  Int_t*   multJetOk   = new Int_t[30];
+  Float_t etaJetOk[30];
+  Float_t phiJetOk[30];
+  Float_t etJetOk[30];
+  Float_t etsigJetOk[30]; //signal et in jet
+  Float_t etallJetOk[30];  // total et in jet (tmp variable)
+  Int_t   ncellsJetOk[30];
+  Int_t   multJetOk[30];
   //--------------------------
   Int_t    nJets; // to hold number of jets found by algorithm
   Int_t    nj;    // number of jets accepted
@@ -689,51 +676,39 @@ void AliUA1JetFinderV2::FindJets()
 
 
   //delete
-  delete ptT;
-  delete en2T;
-  delete pt2T;
-  delete etaT;
-  delete phiT;
+  delete [] ptT;
+  delete [] en2T;
+  delete [] pt2T;
+  delete [] etaT;
+  delete [] phiT;
+  delete [] detT;
+  delete [] cFlagT;
+  delete [] cFlag2T;
+  delete [] sFlagT;
+  delete [] cClusterT;
+  delete [] vectT;
+  delete [] injet;
+  delete [] sflag;
   trackRef->Delete();
   delete trackRef;
-  delete detT;
-  delete cFlagT;
-  delete cFlag2T;
-  delete sFlagT;
-  delete cClusterT;
-  delete vectT;
-  delete injet;
-  delete sflag;
+
   delete hPtTotal;
-  delete etCell;
-  delete etaCell;
-  delete phiCell;
-  delete flagCell;
-  delete etCell2;
-  delete etaCell2;
-  delete phiCell2;
-  delete flagCell2;
-  delete [] etaJet;
-  delete [] phiJet;
-  delete [] etJet;
-  delete [] etsigJet;
-  delete [] etallJet;
-  delete [] ncellsJet;
-  delete [] multJet;
-  //--- Added for jet reordering
-  delete [] etaJetOk;
-  delete [] phiJetOk;
-  delete [] etJetOk;
-  delete [] etsigJetOk;
-  delete [] etallJetOk;
-  delete [] ncellsJetOk;
-  delete [] multJetOk;
+  delete [] etCell;
+  delete [] etaCell;
+  delete [] phiCell;
+  delete [] flagCell;
+  delete [] etCell2;
+  delete [] etaCell2;
+  delete [] phiCell2;
+  delete [] flagCell2;
   //--------------------------
-  delete trackinjet;
-  delete idxjets;
-  delete percentage;
-  delete ncells;
-  delete mult;
+  delete [] idxjets;
+  delete [] idx;
+  delete [] trackinjet;
+
+  delete [] percentage;
+  delete [] ncells;
+  delete [] mult;
 
 }
 
index f9f94a1..87320ad 100644 (file)
@@ -35,7 +35,7 @@ AliVectorSparse* AliMatrixSparse::GetRowAdd(Int_t ir)
   if (ir>=fNrows) {
     AliVectorSparse** arrv = new AliVectorSparse*[ir+1];
     for (int i=GetSize();i--;) arrv[i] = fVecs[i];
-    delete fVecs;
+    delete [] fVecs;
     fVecs = arrv;    
     for (int i=GetSize();i<=ir;i++) fVecs[i] = new AliVectorSparse();
     fNrows = ir+1;
@@ -61,7 +61,7 @@ AliMatrixSparse& AliMatrixSparse::operator=(const AliMatrixSparse& src)
 void AliMatrixSparse::Clear(Option_t*) 
 {
   for (int i=fNrows;i--;) delete GetRow(i);
-  delete[] fVecs;
+  delete [] fVecs;
   fNcols = fNrows = 0;
 }
 
index a9087d7..7a8d586 100644 (file)
@@ -108,12 +108,12 @@ void AliMillePedeRecord::ExpandDtBuffer(Int_t bfsize)
   bfsize = TMath::Max(bfsize,GetDtBufferSize());
   Int_t *tmpI = new Int_t[bfsize];
   memcpy(tmpI,fIndex, fSize*sizeof(Int_t));
-  delete fIndex;
+  delete [] fIndex;
   fIndex = tmpI;
   //
   Double_t *tmpD = new Double_t[bfsize];
   memcpy(tmpD,fValue, fSize*sizeof(Double_t));
-  delete fValue;
+  delete [] fValue;
   fValue = tmpD;
   //
   SetDtBufferSize(bfsize);
@@ -126,7 +126,7 @@ void AliMillePedeRecord::ExpandGrBuffer(Int_t bfsize)
   bfsize = TMath::Max(bfsize,GetGrBufferSize());
   UShort_t *tmpI = new UShort_t[bfsize];
   memcpy(tmpI,fGroupID, fNGroups*sizeof(UShort_t));
-  delete[] fGroupID;
+  delete [] fGroupID;
   fGroupID = tmpI;
   for (int i=fNGroups;i<bfsize;i++) fGroupID[i] = 0;
   //
index b8cf3d7..5a68582 100644 (file)
@@ -119,8 +119,8 @@ AliVertexerTracks::~AliVertexerTracks()
   // The objects pointed by the following pointer are not owned
   // by this class and are not deleted
   fCurrentVertex = 0;
-  if(fTrksToSkip) { delete fTrksToSkip; fTrksToSkip=NULL; }
-  if(fIdSel) { delete fIdSel; fIdSel=NULL; }
+  if(fTrksToSkip) { delete [] fTrksToSkip; fTrksToSkip=NULL; }
+  if(fIdSel) { delete [] fIdSel; fIdSel=NULL; }
 }
 //----------------------------------------------------------------------------
 AliESDVertex* AliVertexerTracks::FindPrimaryVertex(const AliVEvent *vEvent)
@@ -212,7 +212,7 @@ AliESDVertex* AliVertexerTracks::FindPrimaryVertex(const AliVEvent *vEvent)
   FindPrimaryVertex(&trkArrayOrig,idOrig);
 
   if(fMode==0) trkArrayOrig.Delete();
-  delete[] idOrig; idOrig=NULL;
+  delete [] idOrig; idOrig=NULL;
 
   if(f) {
     f->Close(); delete f; f = NULL;
@@ -265,7 +265,7 @@ AliESDVertex* AliVertexerTracks::FindPrimaryVertex(const TObjArray *trkArrayOrig
     // fill fTrkArraySel, for VertexFinder()
     fIdSel = new UShort_t[nTrksOrig];
     PrepareTracks(*trkArrayOrig,idOrig,0);
-    if(fIdSel) { delete[] fIdSel; fIdSel=NULL; }
+    if(fIdSel) { delete [] fIdSel; fIdSel=NULL; }
     Double_t cutsave = fDCAcut;  
     fDCAcut = fDCAcutIter0;
     // vertex finder
@@ -305,7 +305,7 @@ AliESDVertex* AliVertexerTracks::FindPrimaryVertex(const TObjArray *trkArrayOrig
   //                   between initVertex and fCurrentVertex) 
   for(Int_t iter=1; iter<=2; iter++) {
     if(fOnlyFitter && iter==1) continue; 
-    if(fIdSel) { delete fIdSel; fIdSel=NULL; }
+    if(fIdSel) { delete [] fIdSel; fIdSel=NULL; }
     fIdSel = new UShort_t[nTrksOrig];
     Int_t nTrksSel = PrepareTracks(*trkArrayOrig,idOrig,iter);
     AliDebug(1,Form("N tracks selected in iteration %d: %d",iter,nTrksSel));
@@ -346,7 +346,7 @@ AliESDVertex* AliVertexerTracks::FindPrimaryVertex(const TObjArray *trkArrayOrig
       indices[jj] = fIdSel[jj];
     fCurrentVertex->SetIndices(nIndices,indices);
   }
-  if (indices) {delete indices; indices=NULL;}
+  if (indices) {delete [] indices; indices=NULL;}
   //
 
   // set vertex title
@@ -361,9 +361,9 @@ AliESDVertex* AliVertexerTracks::FindPrimaryVertex(const TObjArray *trkArrayOrig
   AliDebug(1,Form("xyz: %f %f %f; nc %d",fCurrentVertex->GetXv(),fCurrentVertex->GetYv(),fCurrentVertex->GetZv(),fCurrentVertex->GetNContributors()));
 
   // clean up
-  delete fIdSel; fIdSel=NULL;
+  delete [] fIdSel; fIdSel=NULL;
   fTrkArraySel.Delete();
-  if(fTrksToSkip) { delete fTrksToSkip; fTrksToSkip=NULL; }
+  if(fTrksToSkip) { delete [] fTrksToSkip; fTrksToSkip=NULL; }
   //
   
   return fCurrentVertex;
@@ -1345,8 +1345,8 @@ void AliVertexerTracks::TooFewTracks()
   }
 
   if(!fTrkArraySel.IsEmpty()) fTrkArraySel.Delete(); 
-  if(fIdSel) {delete fIdSel; fIdSel=NULL;}
-  if(fTrksToSkip) {delete fTrksToSkip; fTrksToSkip=NULL;}
+  if(fIdSel) {delete [] fIdSel; fIdSel=NULL;}
+  if(fTrksToSkip) {delete [] fTrksToSkip; fTrksToSkip=NULL;}
 
   return;
 }
@@ -1707,7 +1707,7 @@ AliESDVertex* AliVertexerTracks::VertexForSelectedTracks(const TObjArray *trkArr
 
   // clean up
   if (indices) {delete [] indices; indices=NULL;}
-  delete fIdSel; fIdSel=NULL;
+  delete [] fIdSel; fIdSel=NULL;
   fTrkArraySel.Delete();
   
   return fCurrentVertex;
index 96c7770..2090dbb 100644 (file)
@@ -264,7 +264,7 @@ void AliGenHBTprocessor::CleanStatusCodes()
   {
     for (Int_t i =0; i<GetGenerator()->GetNumberOfEvents(); i++)
       delete [] fHbtPStatCodes[i];  
-    delete fHbtPStatCodes;
+    delete [] fHbtPStatCodes;
     fHbtPStatCodes = 0;
   }
 
index d421a7b..c9ce3e8 100644 (file)
@@ -1570,8 +1570,8 @@ TNtuple *AliTPCCalibTCF::ApplyTCFilter(TH1F *hisIn, Double_t *coefZ, Double_t *c
   }
 
   // transform TCF parameters into ALTRO readable format (Integer)
-  Int_t* valK = new Int_t[3];
-  Int_t* valL = new Int_t[3];
+  Int_t valK[3];
+  Int_t valL[3];
   for (Int_t i=0; i<3; i++) {
     valK[i] = (Int_t)(coefP[i]*(TMath::Power(2,16)-1));
     valL[i] = (Int_t)(coefZ[i]*(TMath::Power(2,16)-1));
@@ -1621,11 +1621,6 @@ TNtuple *AliTPCCalibTCF::ApplyTCFilter(TH1F *hisIn, Double_t *coefZ, Double_t *c
     // pulseTuple->Draw("sigAfterTCF:timebin","","Lsame");
   }
   
-  valK->~Int_t();
-  valL->~Int_t();
-
-  signalIn->~Double_t();
-  signalOut->~Double_t();
   delete [] signalIn;
   delete [] signalOut;
 
index c092ab6..16729c4 100644 (file)
@@ -305,6 +305,8 @@ const char* AliTPCCalibViewer::AddAbbreviations(const Char_t *c, Bool_t printDra
    str.ReplaceAll(removeString, "");
   
    if (printDrawCommand) std::cout << "The string looks now like: " << str.Data() << std::endl;
+   delete [] varLengths;
+   delete [] normLengths;
    delete [] varSort;
    delete [] normSort;
    return str.Data();