From 741675b458bf23cf437a6c56f95483c5c66af774 Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Fri, 29 Jul 2016 14:08:51 +0200 Subject: Fix memory leak in CPU projectors --- include/astra/ParallelBeamLineKernelProjector2D.inl | 3 +++ include/astra/ParallelBeamLinearKernelProjector2D.inl | 3 +++ include/astra/ParallelBeamStripKernelProjector2D.inl | 2 ++ 3 files changed, 8 insertions(+) diff --git a/include/astra/ParallelBeamLineKernelProjector2D.inl b/include/astra/ParallelBeamLineKernelProjector2D.inl index 199cfd7..b3e54f9 100644 --- a/include/astra/ParallelBeamLineKernelProjector2D.inl +++ b/include/astra/ParallelBeamLineKernelProjector2D.inl @@ -316,4 +316,7 @@ void CParallelBeamLineKernelProjector2D::projectBlock_internal(int _iProjFrom, i } // end loop detector } // end loop angles + if (dynamic_cast(m_pProjectionGeometry)) + delete pVecProjectionGeometry; + } diff --git a/include/astra/ParallelBeamLinearKernelProjector2D.inl b/include/astra/ParallelBeamLinearKernelProjector2D.inl index ecbdeb3..9b2c7b1 100644 --- a/include/astra/ParallelBeamLinearKernelProjector2D.inl +++ b/include/astra/ParallelBeamLinearKernelProjector2D.inl @@ -234,4 +234,7 @@ void CParallelBeamLinearKernelProjector2D::projectBlock_internal(int _iProjFrom, } // end loop detector } // end loop angles + + if (dynamic_cast(m_pProjectionGeometry)) + delete pVecProjectionGeometry; } diff --git a/include/astra/ParallelBeamStripKernelProjector2D.inl b/include/astra/ParallelBeamStripKernelProjector2D.inl index f0203f2..e457316 100644 --- a/include/astra/ParallelBeamStripKernelProjector2D.inl +++ b/include/astra/ParallelBeamStripKernelProjector2D.inl @@ -287,4 +287,6 @@ void CParallelBeamStripKernelProjector2D::projectBlock_internal(int _iProjFrom, } // end loop detector } // end loop angles + if (dynamic_cast(m_pProjectionGeometry)) + delete pVecProjectionGeometry; } -- cgit v1.2.3