]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Protection against missing MC header
authorekryshen <evgeny.kryshen@cern.ch>
Wed, 12 Mar 2014 13:45:02 +0000 (14:45 +0100)
committerekryshen <evgeny.kryshen@cern.ch>
Wed, 12 Mar 2014 14:06:17 +0000 (15:06 +0100)
PWGCF/Correlations/Base/AliAnalysisTaskCFTree.cxx

index c38105e6e766272c3e2900fa994a11067e8f5864..10ce2365acdf7af6d0e1405da39af8df9c04f1f0 100644 (file)
@@ -196,8 +196,12 @@ void AliAnalysisTaskCFTree::Exec(Option_t *){
       fZvtx = mcEvent->GetPrimaryVertex()->GetZ();
     } else if (mcTracks) {
       AliAODMCHeader* mcHeader = (AliAODMCHeader*) event->FindListObject(AliAODMCHeader::StdBranchName());
-      nProduced = mcTracks->GetEntriesFast();
-      nPrimGen = mcHeader->GetCocktailHeaders() ? mcHeader->GetCocktailHeader(0)->NProduced() : nProduced;
+      if (!mcHeader) { printf("AliAODMCHeader not found\n"); return; }
+      if (mcHeader->GetCocktailHeaders()) {
+        AliGenEventHeader* header0 =  mcHeader->GetCocktailHeader(0);
+        if (!header0) { printf("first header expected but not found\n"); return; }
+        nPrimGen = header0->NProduced();
+      } else  nPrimGen = nProduced;
       fZvtx = mcHeader->GetVtxZ();
     } else return;
     fEventStatistics->Fill("after mc header check",1);