]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - THbtp/AliGenHBTprocessor.cxx
Fix from Salvatore for new framework
[u/mrichter/AliRoot.git] / THbtp / AliGenHBTprocessor.cxx
index 96c7770be5b5b6a631da6e83a8df6f74907ae937..6c7b8bfef4d5089730b7df1091369dd8af785f53 100644 (file)
@@ -77,6 +77,7 @@
 
 #include "AliStack.h"
 #include "AliMC.h"
+#include "AliRun.h"
 #include "AliGenCocktailAfterBurner.h"
 #include "AliLog.h"
 
@@ -240,7 +241,10 @@ void AliGenHBTprocessor::InitStatusCodes()
  //creates and inits status codes array to zero
   AliGenCocktailAfterBurner *cab = GetGenerator();
 
-  if(!cab) Fatal("InitStatusCodes()","Can not find AliGenCocktailAfterBurner generator");
+  if(!cab) {
+    Fatal("InitStatusCodes()","Can not find AliGenCocktailAfterBurner generator");
+    return;
+  }
 
   Int_t nev = cab->GetNumberOfEvents();
 
@@ -264,7 +268,7 @@ void AliGenHBTprocessor::CleanStatusCodes()
   {
     for (Int_t i =0; i<GetGenerator()->GetNumberOfEvents(); i++)
       delete [] fHbtPStatCodes[i];  
-    delete fHbtPStatCodes;
+    delete [] fHbtPStatCodes;
     fHbtPStatCodes = 0;
   }
 
@@ -356,6 +360,7 @@ void AliGenHBTprocessor::Generate()
    if (cab == 0x0)
     {
       Fatal("Generate()","AliGenHBTprocessor needs AliGenCocktailAfterBurner to be main generator");
+      return;
     }
    if (cab->GetNumberOfEvents() <2)
     {
@@ -944,9 +949,10 @@ Int_t  AliGenHBTprocessor::GetNumberOfTracks()
   { 
     if (i >= GetNumberOfEvents()) break; //protection not to overshoot nb of events
     AliStack* stack = cab->GetStack(i);
-    if (stack == 0x0)
+    if (stack == 0x0) {
      Error("GetNumberOfTracks","There is no stack %d",i);
-
+     continue;
+    }
     n+=stack->GetNprimary();
   }
  return n;