coverity
authorrvernet <rvernet@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 13 Mar 2011 23:41:47 +0000 (23:41 +0000)
committerrvernet <rvernet@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 13 Mar 2011 23:41:47 +0000 (23:41 +0000)
CORRFW/AliCFParticleGenCuts.cxx
CORRFW/AliCFTrackCutPid.cxx
CORRFW/AliCFTrackCutPid.h
CORRFW/AliCFTrackIsPrimaryCuts.cxx
CORRFW/AliCFTrackQualityCuts.cxx

index d50ed06..01d8208 100644 (file)
@@ -545,7 +545,7 @@ void AliCFParticleGenCuts::SelectionBitMap(AliAODMCParticle* mcPart)
        goodDecay = kTRUE ;
        for (Int_t iDaughter = 0 ; iDaughter<nDaughters; iDaughter++) {
          AliAODMCParticle* daug = dynamic_cast<AliAODMCParticle*>(mcArray->At(mcPart->GetDaughter(1)-iDaughter));
-         if (!daug) AliFatal("");
+         if (!daug) {AliFatal(""); return;}
          if (daug->GetPdgCode() != fDecayChannel->DaughterPdgCode(iDaughter)) {goodDecay = kFALSE; break;}
        }
       }
index 3960735..9013731 100644 (file)
@@ -90,11 +90,12 @@ AliCFTrackCutPid::AliCFTrackCutPid() :
   //
   //Default constructor 
   //
-  for(Int_t j=0; j< AliPID::kSPECIES; j++) {
+  for(Int_t j=0; j< AliPID::kSPECIESN; j++) {
     fPriors[j]=0.2;
+  }
+  for(Int_t j=0; j< AliPID::kSPECIES; j++) {
     fPriorsFunc[j]=0x0;
   }
-  
   for(Int_t jDet=0; jDet< kNdets; jDet++)  {
     fDets[jDet]=kFALSE;
     fDetsInAnd[jDet]=kFALSE;
@@ -126,11 +127,12 @@ AliCFTrackCutPid::AliCFTrackCutPid(const Char_t* name, const Char_t* title) :
   //
   //Constructor
   // 
-  for(Int_t j=0; j< AliPID::kSPECIES; j++) {
+  for(Int_t j=0; j< AliPID::kSPECIESN; j++) {
     fPriors[j]=0.2;
+  }
+  for(Int_t j=0; j< AliPID::kSPECIES; j++) {
     fPriorsFunc[j]=0x0;
   }
-  
   for(Int_t jDet=0; jDet< kNdets; jDet++)  {
     fDets[jDet]=kFALSE;
     fDetsInAnd[jDet]=kFALSE;
@@ -170,8 +172,10 @@ AliCFTrackCutPid::AliCFTrackCutPid(const AliCFTrackCutPid& c) :
       fhProb[i][iP]=c.fhProb[i][iP];
     }
   }
-  for(Int_t j=0; j< AliPID::kSPECIES; j++){
+  for(Int_t j=0; j< AliPID::kSPECIESN; j++){
     fPriors[j]=c.fPriors[j];
+  }
+  for(Int_t j=0; j< AliPID::kSPECIES; j++){
     fPriorsFunc[j]=c.fPriorsFunc[j];
     fhCombResp[j]=c.fhCombResp[j];
     fhCombProb[j]=c.fhCombProb[j];
@@ -211,8 +215,10 @@ AliCFTrackCutPid& AliCFTrackCutPid::operator=(const AliCFTrackCutPid& c)
       }  
     }
 
-    for(Int_t j=0; j< AliPID::kSPECIES; j++){
+    for(Int_t j=0; j< AliPID::kSPECIESN; j++){
       this->fPriors[j]=c.fPriors[j];
+    }
+    for(Int_t j=0; j< AliPID::kSPECIES; j++){
       this->fhCombResp[j]=c.fhCombResp[j];
       this->fhCombProb[j]=c.fhCombProb[j];
       this-> fPriorsFunc[j]=c.fPriorsFunc[j];
@@ -520,7 +526,8 @@ Int_t AliCFTrackCutPid::IdentifyQA(const Double_t pid[AliPID::kSPECIES], Int_t i
     fhProb[idets][iP]->Fill(probability[iP]);
   }
   
-  AliPID toresp(pid,kTRUE); Double_t qapriors[5]={0.2,0.2,0.2,0.2,0.2};
+  AliPID toresp(pid,kTRUE); 
+  Double_t qapriors[10]={0.2,0.2,0.2,0.2,0.2,0,0,0,0,0};
   toresp.SetPriors(qapriors);
   for(Int_t iPr=0; iPr<AliPID::kSPECIES; iPr++) fhResp[idets][iPr]->Fill(toresp.GetProbability((AliPID::EParticleType)iPr));
   
@@ -542,6 +549,7 @@ Bool_t AliCFTrackCutPid::IsSelected(TObject *track){
   TString className(track->ClassName());
   if (className.CompareTo("AliESDtrack") == 0) {
   AliESDtrack *esdTrack = dynamic_cast<AliESDtrack*>(track); 
+  if (!esdTrack) return kFALSE;
   ULong_t status[kNdets+1]={0,0,0,0,0,0};
   Double_t pid[kNdets+1][AliPID::kSPECIES];
   TrackInfo(esdTrack,status,pid);
@@ -551,6 +559,7 @@ Bool_t AliCFTrackCutPid::IsSelected(TObject *track){
 
   if (className.CompareTo("AliAODTrack") == 0) {
   AliAODTrack *aodtrack = dynamic_cast<AliAODTrack *>(track);
+  if (!aodtrack) return kFALSE ;
   if(GetAODID(aodtrack) == fgParticleType) sel = kTRUE;
   }
 
index 2b4df8d..3e82fcc 100644 (file)
@@ -113,7 +113,7 @@ class AliCFTrackCutPid : public AliCFCutBase
                                                             // fgParticleType if the probability is larger than this threshold,
                                                             // regardless it is the highest or not (!)
 
-  Double_t fPriors[AliPID::kSPECIES];                       // a priori concentrations
+  Double_t fPriors[AliPID::kSPECIESN];                       // a priori concentrations
   TF1 *fPriorsFunc[AliPID::kSPECIES];                       // momentum dependent priors
   Bool_t fDets[kNdets];                                     // boolean(s) corresponding to the chosen detector(s) 
   Bool_t fDetsInAnd[kNdets];                                // detector to be in AND for the combined PID
index 7f878cf..a967535 100644 (file)
@@ -794,10 +794,10 @@ void AliCFTrackIsPrimaryCuts::SetHistogramBins(Int_t index, Int_t nbins, Double_
   fhCutCorrelation->GetYaxis()->SetBinLabel(9,"AOD type");
 
   // book QA histograms
-  Char_t str[256];
+  Char_t str[5];
   for (Int_t i=0; i<kNStepQA; i++) {
-    if (i==0) sprintf(str," ");
-    else sprintf(str,"_cut");
+    if (i==0) snprintf(str,5," ");
+    else snprintf(str,5,"_cut");
 
     fhDcaXYvsDcaZ[i]            = new  TH2F(Form("%s_dcaXYvsDcaZ%s",GetName(),str),"",200,-10,10,200,-10,10);
     fhQA[kCutNSigmaToVertex][i]        = new TH1F(Form("%s_nSigmaToVertex%s",GetName(),str),"",fhNBinsNSigma-1,fhBinLimNSigma);
@@ -832,6 +832,7 @@ void AliCFTrackIsPrimaryCuts::FillHistograms(TObject* obj, Bool_t f)
   // fill the QA histograms
   //
 
+  if (!obj) return;
   Bool_t isESDTrack = strcmp(obj->ClassName(),"AliESDtrack") == 0 ? kTRUE : kFALSE ;
   Bool_t isAODTrack = strcmp(obj->ClassName(),"AliAODTrack") == 0 ? kTRUE : kFALSE ;
 
@@ -871,7 +872,6 @@ void AliCFTrackIsPrimaryCuts::FillHistograms(TObject* obj, Bool_t f)
   if (f) return;
 
   // Get the bitmap of the single cuts
-  if ( !obj ) return;
   SelectionBitMap(obj);
 
   // Number of single cuts in this class
index 0a7a05a..44700b5 100644 (file)
@@ -903,7 +903,7 @@ void AliCFTrackQualityCuts::FillHistograms(TObject* obj, Bool_t b)
   // fill the QA histograms
   //
 
-  //if (!obj) return;
+  if (!obj) return;
   if (!obj->InheritsFrom("AliVParticle")) {
     AliError("object must derived from AliVParticle !");
     return;
@@ -995,7 +995,6 @@ void AliCFTrackQualityCuts::FillHistograms(TObject* obj, Bool_t b)
   if (b) return;
 
   // Get the bitmap of the single cuts
-  if ( !obj ) return;
   SelectionBitMap(obj);
 
   // Number of single cuts in this class