diff --git a/Geo/OCCRegion.cpp b/Geo/OCCRegion.cpp
index b41a798f2313344490f986969ef1ab50be60c090..5be90f4963630ce2eb90ca2de1f3a023d0d52808 100644
--- a/Geo/OCCRegion.cpp
+++ b/Geo/OCCRegion.cpp
@@ -54,7 +54,7 @@ void OCCRegion::setup()
     TopoDS_Edge edge = TopoDS::Edge(exp3.Current());
     GEdge *e = model()->getOCCInternals()->getOCCEdgeByNativePtr(model(), edge);
     if (!e){
-      Msg::Error("Unknown edge in face %d", tag());
+      Msg::Error("Unknown edge in region %d", tag());
     }
     else if (edge.Orientation() == TopAbs_INTERNAL){
       Msg::Info("Adding embedded edge %d", e->tag());
@@ -64,6 +64,18 @@ void OCCRegion::setup()
     }
   }
 
+  for (exp3.Init(s, TopAbs_VERTEX); exp3.More(); exp3.Next()){
+    TopoDS_Vertex vertex = TopoDS::Vertex(exp3.Current());
+    GVertex *v = model()->getOCCInternals()->getOCCVertexByNativePtr(model(), vertex);
+    if (!v){
+      Msg::Error("Unknown vertex in region %d", tag());
+    }
+    else if (vertex.Orientation() == TopAbs_INTERNAL){
+      Msg::Info("Adding embedded vertex %d", v->tag());
+      embedded_vertices.push_back(v);
+    }
+  }
+
   Msg::Debug("OCC Region %d with %d faces", tag(), l_faces.size());
 }