diff --git a/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.cxx b/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.cxx
index 2876e30e74e221bb24cf7f241c15dcabcfb64f6a..2e95d1959e3968b4764a02aec9c3451f5a5ea444 100644
--- a/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.cxx
+++ b/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.cxx
@@ -160,9 +160,9 @@ StatusCode RoRSeqFilter::execute( const EventContext& ctx ) const {
         if ( inputHandles[inputIndex].isValid() and not inputHandles[inputIndex]->empty() ) {
           ATH_MSG_DEBUG( "Checking inputHandle: "<< inputHandles[inputIndex].key() <<" has " << inputHandles[inputIndex]->size() <<" elements");
           if ( not m_chainsPerInput.empty() ) {
-            passCounter += copyPassing( *inputHandles[inputIndex], *output, m_chainsPerInput[inputIndex] );
+            passCounter += copyPassing( *inputHandles[inputIndex], *output, m_chainsPerInput[inputIndex], ctx );
           } else {
-            passCounter += copyPassing( *inputHandles[inputIndex], *output, m_chains );
+            passCounter += copyPassing( *inputHandles[inputIndex], *output, m_chains, ctx );
           }
           ATH_MSG_DEBUG( "Recorded output key " <<  m_outputKeys[ outputIndex ].key() <<" of size "<<output->size()  <<" at index "<< outputIndex);
         }
@@ -183,7 +183,8 @@ StatusCode RoRSeqFilter::execute( const EventContext& ctx ) const {
 }
   
 size_t RoRSeqFilter::copyPassing( const DecisionContainer& input,
-                                  DecisionContainer& output, const std::set<HLT::Identifier>& topass ) const {
+                                  DecisionContainer& output, const std::set<HLT::Identifier>& topass,
+                                  const EventContext& ctx ) const {
   size_t passCounter = 0;
   for (size_t i = 0; i < input.size(); ++i) {
     const Decision* inputDecision = input.at(i);
@@ -200,7 +201,7 @@ size_t RoRSeqFilter::copyPassing( const DecisionContainer& input,
 
     if ( not intersection.empty() ) {      
       // This sets up the 'self' link & the 'seed' link (seeds from inputDecision)
-      Decision* decisionCopy = newDecisionIn( &output, inputDecision, "F" );
+      Decision* decisionCopy = newDecisionIn( &output, inputDecision, "F", ctx );
 
       // Copy accross only the DecisionIDs which have passed through this Filter for this Decision object. 
       // WARNING: Still need to 100% confirm if the correct set to propagate forward is objDecisions or intersection.
diff --git a/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.h b/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.h
index 6fc374e0b55e2de76cea35403811d2bca7f87b73..ea0846269006eb9c8aa497511163c11adce9b9d8 100644
--- a/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.h
+++ b/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.h
@@ -91,9 +91,10 @@ class RoRSeqFilter
  * at least one of the chains which this filter algorithm is configured for. This new object is linked to its 
  * parent and stored in the output collection. It will form the starting point for the next Step. 
  **/
-  size_t copyPassing( const TrigCompositeUtils::DecisionContainer& input, 
-                      TrigCompositeUtils::DecisionContainer& output, const std::set<HLT::Identifier>& topass) const;
-
+  size_t copyPassing( const TrigCompositeUtils::DecisionContainer& input,
+                      TrigCompositeUtils::DecisionContainer& output,
+                      const std::set<HLT::Identifier>& topass,
+                      const EventContext& ctx) const;
   ToolHandle<GenericMonitoringTool> m_monTool{ this, "MonTool", "", "Filter I/O monitoring" };
 };