diff --git a/InnerDetector/InDetDetDescr/InDetTrackingGeometry/src/BeamPipeBuilderCond.cxx b/InnerDetector/InDetDetDescr/InDetTrackingGeometry/src/BeamPipeBuilderCond.cxx
index 62054c2c940e5bd57fa6ce258b7203770d171dba..bb6f82bc75226be66ab4f09d155d92c01188e625 100644
--- a/InnerDetector/InDetDetDescr/InDetTrackingGeometry/src/BeamPipeBuilderCond.cxx
+++ b/InnerDetector/InDetDetDescr/InDetTrackingGeometry/src/BeamPipeBuilderCond.cxx
@@ -166,23 +166,24 @@ std::pair<EventIDRange, const std::vector< const Trk::CylinderLayer* >*>  InDet:
 					   m_beamPipeRho);
   
   // binned layer material for the beam pipe possible
-  Trk::LayerMaterialProperties* beamPipeLayerMaterial=nullptr;
-  if (  m_beamPipeBinsZ == 1) 
-     beamPipeLayerMaterial = new Trk::HomogeneousLayerMaterial(beamPipeMaterial, 1.0);
-  else { 
+  const Trk::CylinderLayer * pThisCylinderLayer{};
+  if (  m_beamPipeBinsZ == 1) {
+     const auto &beamPipeLayerMaterial = Trk::HomogeneousLayerMaterial(beamPipeMaterial, 1.0);
+     pThisCylinderLayer = new Trk::CylinderLayer(beamPipeTransform,
+                                             beamPipeBounds,
+                                             beamPipeLayerMaterial,
+                                             m_beamPipeThickness);
+     
+  } else { 
       Trk::BinUtility layerBinUtility(m_beamPipeBinsZ, -m_beamPipeHalflength, m_beamPipeHalflength, Trk::open, Trk::binZ );
-      beamPipeLayerMaterial = new Trk::BinnedLayerMaterial(layerBinUtility);  
-  }
-  
-  ATH_MSG_DEBUG( "BeamPipe constructed with material-properties: " << beamPipeMaterial ); 
-                                                                                    
-  beamPipe->push_back(new Trk::CylinderLayer(beamPipeTransform,
+      const auto &beamPipeLayerMaterial = Trk::BinnedLayerMaterial(layerBinUtility);
+      pThisCylinderLayer = new Trk::CylinderLayer(beamPipeTransform,
                                              beamPipeBounds,
-                                             *beamPipeLayerMaterial,
-                                             m_beamPipeThickness));
-  //delete beamPipeLayerMaterial; 
-  
-  //create dummy infinite range
+                                             beamPipeLayerMaterial,
+                                             m_beamPipeThickness);
+  }
+  beamPipe->push_back(pThisCylinderLayer);
+   //create dummy infinite range
   EventIDRange range = IOVInfiniteRange::infiniteMixed();
   return std::make_pair(range,beamPipe);