diff --git a/Control/AthenaServices/src/AthenaEventLoopMgr.cxx b/Control/AthenaServices/src/AthenaEventLoopMgr.cxx
index ece6bb68f8a69a03d613deaa3762e30789cf4023..75a09f43c7f342a3fc6c689f41872fadac29850d 100644
--- a/Control/AthenaServices/src/AthenaEventLoopMgr.cxx
+++ b/Control/AthenaServices/src/AthenaEventLoopMgr.cxx
@@ -1086,21 +1086,6 @@ void AthenaEventLoopMgr::handle(const Incident& inc)
   }
 
   // Construct EventInfo
-  EventID eventID;
-  const EventInfo* pEvent=eventStore()->tryConstRetrieve<EventInfo>(); //Try getting EventInfo from old-style object
-  if (pEvent) {
-    eventID=*(pEvent->event_ID());
-  }
-  else { //Try getting xAOD::EventInfo object
-    const xAOD::EventInfo* xAODEvent=eventStore()->tryConstRetrieve<xAOD::EventInfo>(); 
-    if (xAODEvent==nullptr) {
-      error() << "Failed to get EventID from input. Tried old-style and xAOD::EventInfo" <<endmsg;
-      return; 
-    }
-    eventID=eventIDFromxAOD(xAODEvent);
-  }
-
-
   IOpaqueAddress* addr = nullptr;
   sc = m_evtSelector->next(*m_evtSelCtxt);
   if(!sc.isSuccess()) {
@@ -1126,6 +1111,20 @@ void AthenaEventLoopMgr::handle(const Incident& inc)
     return;
   }
 
+  EventID eventID;
+  const EventInfo* pEvent=eventStore()->tryConstRetrieve<EventInfo>(); //Try getting EventInfo from old-style object
+  if (pEvent) {
+    eventID=*(pEvent->event_ID());
+  }
+  else { //Try getting xAOD::EventInfo object
+    const xAOD::EventInfo* xAODEvent=eventStore()->tryConstRetrieve<xAOD::EventInfo>();
+    if (xAODEvent==nullptr) {
+      error() << "Failed to get EventID from input. Tried old-style and xAOD::EventInfo" <<endmsg;
+      return;
+    }
+    eventID=eventIDFromxAOD(xAODEvent);
+  }
+
   // Need to make sure we have a valid EventContext in place before
   // doing anything that could fire incidents.
   unsigned int conditionsRun = eventID.run_number();