We were not deallocating all samples

This commit is contained in:
Clement Jamin 2015-06-26 09:47:25 +02:00
parent f8b4636f5f
commit cb55fa6ade
1 changed files with 5 additions and 17 deletions

View File

@ -429,25 +429,13 @@ public:
}
void clear() {
Sample_vector samples;
m_dt.collect_all_samples(samples);
// Deallocate samples
for (Vertex_iterator vi = m_dt.vertices_begin();
vi != m_dt.vertices_end(); ++vi)
for (Sample_vector_const_iterator s_it = samples.begin();
s_it != samples.end(); ++s_it)
{
Sample_ *s = vi->get_sample();
if (s)
delete s;
}
for (Finite_edges_iterator ei = m_dt.finite_edges_begin();
ei != m_dt.finite_edges_end(); ++ei)
{
Edge &edge = *ei;
const Sample_vector& samples = edge.first->samples(edge.second);
Sample_vector_const_iterator it;
for (it = samples.begin(); it != samples.end(); ++it)
{
delete *it;
}
delete *s_it;
}
m_dt.clear();