diff --git a/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/TimedExtrapolator.h b/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/TimedExtrapolator.h
index f6a757dc628725d4c25f25ce2ea8347a46d05ddc..4354b419b78390533c1cbb706edbad8c424ce10a 100755
--- a/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/TimedExtrapolator.h
+++ b/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/TimedExtrapolator.h
@@ -337,6 +337,13 @@ namespace Trk {
        Cache(unsigned int max_navig_surf=1000.) : m_path(0.,0) {
           m_navigSurfs.reserve(max_navig_surf);
        }
+       ~Cache() {
+	  for (std::pair<const Trk::TrackParameters *, bool> param : m_garbageBin) {
+             if (param.second) {
+                delete param.first;
+             }
+	  }
+       }
        bool                    m_dense {};                         //!<  internal switch for resolved configuration
 
     // ------------ Recall / Boundary Information ----------------------- //