]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
#102033: Potentially overwriting AOD tracks in AliAnalysisTaskESDMuonFilter
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 19 Sep 2013 13:17:47 +0000 (13:17 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 19 Sep 2013 13:17:47 +0000 (13:17 +0000)
PWG/muon/AliAnalysisTaskESDMuonFilter.cxx

index 67c243d9a9a1e1403f2b51c61f3f8298e84da32a..31a0f7ca058e2f87b6631f0b6100014c0e15405b 100644 (file)
@@ -260,7 +260,7 @@ void AliAnalysisTaskESDMuonFilter::ConvertESDtoAOD()
   
   // Access to the AOD container of tracks
   TClonesArray &tracks = *(AODEvent()->GetTracks());
-  Int_t jTracks = header->GetRefMultiplicity();
+  Int_t jTracks = tracks.GetEntriesFast();
   
   // Read primary vertex from AOD event 
   AliAODVertex *primary = AODEvent()->GetPrimaryVertex();
@@ -272,6 +272,7 @@ void AliAnalysisTaskESDMuonFilter::ConvertESDtoAOD()
   for (Int_t iTrack=0; iTrack<nMuTracks; ++iTrack) esd->GetMuonTrack(iTrack)->SetESDEvent(esd);
   
   // Update number of positive and negative tracks from AOD event (M.G.)
+  Int_t nTracks    = header->GetRefMultiplicity();
   Int_t nPosTracks = header->GetRefMultiplicityPos();
   Int_t nNegTracks = header->GetRefMultiplicityNeg();
   
@@ -344,6 +345,7 @@ void AliAnalysisTaskESDMuonFilter::ConvertESDtoAOD()
     aodTrack->Connected(esdMuTrack->IsConnected());
     primary->AddDaughter(aodTrack);
     
+    ++nTracks;
     if (esdMuTrack->Charge() > 0) nPosTracks++;
     else nNegTracks++;
     
@@ -372,7 +374,7 @@ void AliAnalysisTaskESDMuonFilter::ConvertESDtoAOD()
   }
   
   
-  header->SetRefMultiplicity(jTracks); 
+  header->SetRefMultiplicity(nTracks); 
   header->SetRefMultiplicityPos(nPosTracks);
   header->SetRefMultiplicityNeg(nNegTracks);
   header->SetNumberOfMuons(nMuons);