diff --git a/Geo/GModelIO_Mesh.cpp b/Geo/GModelIO_Mesh.cpp index a188c8b6a3bc0f9d847f7c2d863ef243cf235486..b6b4c071d474d07ebf2afcbb5bd51812bcaa197c 100644 --- a/Geo/GModelIO_Mesh.cpp +++ b/Geo/GModelIO_Mesh.cpp @@ -1093,7 +1093,7 @@ int GModel::readSTL(const std::string &name, double tolerance) } } } - delete data; + delete [] data; } } } diff --git a/Numeric/cartesian.h b/Numeric/cartesian.h index 9eeb00bac5931f962ec094ff086a2f22e825afae..164982c830fa9a10203055a964fc310fbcae567e 100644 --- a/Numeric/cartesian.h +++ b/Numeric/cartesian.h @@ -226,23 +226,22 @@ class cartesianBox { SPoint3 p7 = getNodeCoordinates(it7->first); SPoint3 p8 = getNodeCoordinates(it8->first); - MVertex *v1 = new MVertex(p1.x(), p1.y(), p1.z()); - MVertex *v2 = new MVertex(p2.x(), p2.y(), p2.z()); - MVertex *v3 = new MVertex(p3.x(), p3.y(), p3.z()); - MVertex *v4 = new MVertex(p4.x(), p4.y(), p4.z()); - MVertex *v5 = new MVertex(p5.x(), p5.y(), p5.z()); - MVertex *v6 = new MVertex(p6.x(), p6.y(), p6.z()); - MVertex *v7 = new MVertex(p7.x(), p7.y(), p7.z()); - MVertex *v8 = new MVertex(p8.x(), p8.y(), p8.z()); + MVertex v1(p1.x(), p1.y(), p1.z()); + MVertex v2(p2.x(), p2.y(), p2.z()); + MVertex v3(p3.x(), p3.y(), p3.z()); + MVertex v4(p4.x(), p4.y(), p4.z()); + MVertex v5(p5.x(), p5.y(), p5.z()); + MVertex v6(p6.x(), p6.y(), p6.z()); + MVertex v7(p7.x(), p7.y(), p7.z()); + MVertex v8(p8.x(), p8.y(), p8.z()); - MHexahedron *newElem = new MHexahedron(v1, v2, v3, v4, v5, v6, v7, v8); + MHexahedron newElem(&v1, &v2, &v3, &v4, &v5, &v6, &v7, &v8); double uvw[3]; double xyz[3] = {x,y,z}; - newElem->xyz2uvw(xyz, uvw); + newElem.xyz2uvw(xyz, uvw); //printf("uvw =%g %g %g \n", uvw[0],uvw[1],uvw[2]); - double val = newElem->interpolate(vals, uvw[0], uvw[1], uvw[2]); + double val = newElem.interpolate(vals, uvw[0], uvw[1], uvw[2]); - delete newElem; return val; } int getCellContainingPoint(double x, double y, double z) const