diff --git a/Numeric/MetricBasis.cpp b/Numeric/MetricBasis.cpp index 868361a7435a7d14c6a5d78477f3e5196dd49f2f..86a94a59482de955f2376e8e4a873454abb79554 100644 --- a/Numeric/MetricBasis.cpp +++ b/Numeric/MetricBasis.cpp @@ -157,12 +157,16 @@ double MetricBasis::getMinSampledR(MElement *el, int deg) const fullMatrix<double> R; interpolate(el, md, samplingPoints, R); - if (R.size1() < 1) return -1; + if (R.size1() < 1) { + delete md; + return -1; + } double min = R(0, 1); for (int i = 1; i < R.size1(); ++i) min = std::min(min, R(i, 1)); + delete md; return min; } @@ -891,6 +895,7 @@ void MetricBasis::interpolateAfterNSubdivisions( interpolate(el, md, subuvw, metric); bezierMapping->interpolate(nodes, subuvw, uvw, false); + delete md; } int MetricBasis::metricOrder(int tag)