diff --git a/src/polymesh/impl/impl_mesh.hh b/src/polymesh/impl/impl_mesh.hh index 29dfab4a1fc8f06903fce312fae9f78e37058985..6ae4597cb8ca0ac889dea0de9fa0099eeb1d8da1 100644 --- a/src/polymesh/impl/impl_mesh.hh +++ b/src/polymesh/impl/impl_mesh.hh @@ -741,10 +741,15 @@ inline face_index Mesh::face_fill(halfedge_index h) // set face h_ref.face = f; - // set boundary + // fix face boundary if (is_boundary(opposite(h))) f_ref.halfedge = h; + // fix adj face boundary + auto adj_face = halfedge(opposite(h)).face; + if (adj_face.is_valid()) + fix_boundary_state_of(adj_face); + // advance h = h_ref.next_halfedge; } while (h != h_begin);