Skip to content

Commit 05a0a1c

Browse files
committed
BUG: Addressed memory leak of progress object
A raw new was used with no memory management. Switch to a stack based object.
1 parent 5487696 commit 05a0a1c

File tree

2 files changed

+16
-16
lines changed

2 files changed

+16
-16
lines changed

include/itkLabelSetDilateImageFilter.hxx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,12 @@ LabelSetDilateImageFilter<TInputImage, TOutputImage>::ThreadedGenerateData(
5151
}
5252
float progressPerDimension = 1.0 / ImageDimension;
5353

54-
auto * progress = new ProgressReporter(this,
55-
threadId,
56-
NumberOfRows[this->m_CurrentDimension],
57-
30,
58-
this->m_CurrentDimension * progressPerDimension,
59-
progressPerDimension);
54+
ProgressReporter progress(this,
55+
threadId,
56+
NumberOfRows[this->m_CurrentDimension],
57+
30,
58+
this->m_CurrentDimension * progressPerDimension,
59+
progressPerDimension);
6060

6161
// this is where the work happens. We use a distance image with
6262
// floating point pixel to perform the parabolic operations. The
@@ -114,7 +114,7 @@ LabelSetDilateImageFilter<TInputImage, TOutputImage>::ThreadedGenerateData(
114114
inputIterator,
115115
outputDistIterator,
116116
outputIterator,
117-
*progress,
117+
progress,
118118
LineLength,
119119
this->m_CurrentDimension,
120120
this->m_MagnitudeSign,
@@ -132,7 +132,7 @@ LabelSetDilateImageFilter<TInputImage, TOutputImage>::ThreadedGenerateData(
132132
inputDistIterator,
133133
outputDistIterator,
134134
outputIterator,
135-
*progress,
135+
progress,
136136
LineLength,
137137
this->m_CurrentDimension,
138138
this->m_MagnitudeSign,

include/itkLabelSetErodeImageFilter.hxx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,12 @@ LabelSetErodeImageFilter<TInputImage, TOutputImage>::ThreadedGenerateData(
5959
}
6060
float progressPerDimension = 1.0 / ImageDimension;
6161

62-
auto * progress = new ProgressReporter(this,
63-
threadId,
64-
NumberOfRows[this->m_CurrentDimension],
65-
30,
66-
this->m_CurrentDimension * progressPerDimension,
67-
progressPerDimension);
62+
ProgressReporter progress(this,
63+
threadId,
64+
NumberOfRows[this->m_CurrentDimension],
65+
30,
66+
this->m_CurrentDimension * progressPerDimension,
67+
progressPerDimension);
6868

6969
using InputConstIteratorType = ImageLinearConstIteratorWithIndex<TInputImage>;
7070
using OutputIteratorType = ImageLinearIteratorWithIndex<TOutputImage>;
@@ -109,7 +109,7 @@ LabelSetErodeImageFilter<TInputImage, TOutputImage>::ThreadedGenerateData(
109109
inputIterator,
110110
outputDistIterator,
111111
outputIterator,
112-
*progress,
112+
progress,
113113
LineLength,
114114
this->m_CurrentDimension,
115115
this->m_MagnitudeSign,
@@ -129,7 +129,7 @@ LabelSetErodeImageFilter<TInputImage, TOutputImage>::ThreadedGenerateData(
129129
inputDistIterator,
130130
outputDistIterator,
131131
outputIterator,
132-
*progress,
132+
progress,
133133
LineLength,
134134
this->m_CurrentDimension,
135135
this->m_MagnitudeSign,

0 commit comments

Comments
 (0)