From 02edea9ef59f960a1f657e9b8891331b0e6f6f5c Mon Sep 17 00:00:00 2001 From: Christophe Geuzaine <cgeuzaine@ulg.ac.be> Date: Thu, 30 Mar 2017 17:13:06 +0800 Subject: [PATCH] fix bug --- Mesh/meshGFace.cpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/Mesh/meshGFace.cpp b/Mesh/meshGFace.cpp index 95d26ebad3..13772140cf 100644 --- a/Mesh/meshGFace.cpp +++ b/Mesh/meshGFace.cpp @@ -1794,14 +1794,18 @@ static bool buildConsecutiveListOfVertices(GFace *gf, GEdgeLoop &gel, std::vector<MVertex*> edgeLoop; if(found._sign == 1){ - edgeLoop.push_back(found.ge->getBeginVertex()->mesh_vertices[0]); - for(unsigned int i = 0; i <found.ge->mesh_vertices.size(); i++) - edgeLoop.push_back(found.ge->mesh_vertices[i]); + if(found.ge->getBeginVertex()){ + edgeLoop.push_back(found.ge->getBeginVertex()->mesh_vertices[0]); + for(unsigned int i = 0; i <found.ge->mesh_vertices.size(); i++) + edgeLoop.push_back(found.ge->mesh_vertices[i]); + } } else{ - edgeLoop.push_back(found.ge->getEndVertex()->mesh_vertices[0]); - for(int i = found.ge->mesh_vertices.size() - 1; i >= 0; i--) - edgeLoop.push_back(found.ge->mesh_vertices[i]); + if(found.ge->getEndVertex()){ + edgeLoop.push_back(found.ge->getEndVertex()->mesh_vertices[0]); + for(int i = found.ge->mesh_vertices.size() - 1; i >= 0; i--) + edgeLoop.push_back(found.ge->mesh_vertices[i]); + } } if(MYDEBUG) -- GitLab