From 29e59bf87d0165dcb0252185719a9b6821ea3161 Mon Sep 17 00:00:00 2001
From: Christian Gutschow <chris.g@cern.ch>
Date: Mon, 7 Nov 2022 20:33:54 +0000
Subject: [PATCH] only count status 4 beam particles

---
 Generators/EvgenProdTools/src/FixHepMC.cxx | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/Generators/EvgenProdTools/src/FixHepMC.cxx b/Generators/EvgenProdTools/src/FixHepMC.cxx
index e4f10e63ce24..19dafad38ff8 100644
--- a/Generators/EvgenProdTools/src/FixHepMC.cxx
+++ b/Generators/EvgenProdTools/src/FixHepMC.cxx
@@ -45,11 +45,14 @@ StatusCode FixHepMC::execute() {
     }
 
     // Catch cases with more than 2 beam particles (16.11.2021)
-    auto beams_t = evt->beams();
+    std::vector<HepMC::GenParticlePtr> beams_t;
+    for (HepMC::GenParticlePtr p : evt->beams()) {
+      if (p->status() == 4)  beams_t.push_back(p);
+    }
     if (beams_t.size() > 2) {
       ATH_MSG_INFO("Invalid number of beam particles " <<  beams_t.size() << ". Will try to fix.");
       std::vector<HepMC::GenParticlePtr> bparttoremove;
-      for (auto bpart: beams_t) {
+      for (const auto& bpart : beams_t) {
         if (bpart->id() == 0 && bpart->production_vertex()) bparttoremove.push_back(bpart);
       }
       for (auto bpart: bparttoremove) {
-- 
GitLab