diff --git a/src/targetspacertrsolver.cc b/src/targetspacertrsolver.cc
index f44c2157805b4dd5d89320cbce135d3c28f764cd..fdbd646dd66c8642ac7406f583b89d1638fcdd34 100644
--- a/src/targetspacertrsolver.cc
+++ b/src/targetspacertrsolver.cc
@@ -33,11 +33,11 @@ setup(const AverageDistanceAssembler<TargetSpace>* assembler,
 
     EnergyNorm<MatrixType, CorrectionType>* energyNorm = new EnergyNorm<MatrixType, CorrectionType>(*innerSolverStep);
 
-    innerSolver_ = new ::LoopSolver<CorrectionType>(innerSolverStep,
-                                                    innerIterations,
-                                                    innerTolerance,
-                                                    energyNorm,
-                                                    Solver::QUIET);
+    innerSolver_ = std::auto_ptr< ::LoopSolver<CorrectionType> >(new ::LoopSolver<CorrectionType>(innerSolverStep,
+                                                                                                  innerIterations,
+                                                                                                  innerTolerance,
+                                                                                                  energyNorm,
+                                                                                                  Solver::QUIET));
 
     // //////////////////////////////////////////////////////////
     //   Create obstacles
diff --git a/src/targetspacertrsolver.hh b/src/targetspacertrsolver.hh
index 19a44f2693acb0235273e038d0bf4b0007a9356c..87219999723e26c763e288742f2fcfcd523b7f15 100644
--- a/src/targetspacertrsolver.hh
+++ b/src/targetspacertrsolver.hh
@@ -71,7 +71,7 @@ protected:
     const AverageDistanceAssembler<TargetSpace>* assembler_;
 
     /** \brief The solver for the quadratic inner problems */
-    ::LoopSolver<CorrectionType>* innerSolver_;
+    std::auto_ptr< ::LoopSolver<CorrectionType> > innerSolver_;
 
 //     /** \brief Dummy field for the trustregiongsstep */
 //     Dune::BitSetVector<blocksize> dummyObstacle_;