diff --git a/DDG4/edm4hep/Geant4Output2EDM4hep.cpp b/DDG4/edm4hep/Geant4Output2EDM4hep.cpp
index 335392f8ff0899f02d5f6ae2b315a8077d32fb2c..1a702037670f90442cee18e8e46efa91cd866509 100644
--- a/DDG4/edm4hep/Geant4Output2EDM4hep.cpp
+++ b/DDG4/edm4hep/Geant4Output2EDM4hep.cpp
@@ -235,8 +235,8 @@ void Geant4Output2EDM4hep::commit( OutputContext<G4Event>& /* ctxt */)   {
     G4AutoLock protection_lock(&action_mutex);
     m_frame.put( std::move(m_particles), "MCParticles");
     while ( ! m_trackerHits.empty() ) {
-      auto trackerHits = m_trackerHits.back().extract();
-      m_frame.put( std::move(trackerHits), trackerHits.key());
+      auto trackerHits = m_trackerHits.extract(m_trackerHits.begin());
+      m_frame.put( std::move(trackerHits.mapped()), trackerHits.key());
     }
     while ( ! m_calorimeterHits.empty() ) {
       const auto colName = m_calorimeterHits.back().key();