From 546245f15c9a8a6ab36a509a8bb836d7e54e5b08 Mon Sep 17 00:00:00 2001 From: glisse Date: Fri, 22 Dec 2017 13:32:57 +0000 Subject: Check that user does not try to insert null_vertex in the complex. git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/branches/misc-glisse@3100 636b058d-ea47-450e-bf9e-a15bfbe3eedb Former-commit-id: b44cf48f810de029f3bd8c3a18cc8a9959c34bff --- src/Simplex_tree/include/gudhi/Simplex_tree.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/Simplex_tree/include') diff --git a/src/Simplex_tree/include/gudhi/Simplex_tree.h b/src/Simplex_tree/include/gudhi/Simplex_tree.h index 2dddc518..327e1a62 100644 --- a/src/Simplex_tree/include/gudhi/Simplex_tree.h +++ b/src/Simplex_tree/include/gudhi/Simplex_tree.h @@ -584,12 +584,14 @@ class Simplex_tree { std::pair res_insert; auto vi = simplex.begin(); for (; vi != simplex.end() - 1; ++vi) { + GUDHI_CHECK(*vi != null_vertex(), "cannot use the dummy null_vertex() as a real vertex"); res_insert = curr_sib->members_.emplace(*vi, Node(curr_sib, filtration)); if (!(has_children(res_insert.first))) { res_insert.first->second.assign_children(new Siblings(curr_sib, *vi)); } curr_sib = res_insert.first->second.children(); } + GUDHI_CHECK(*vi != null_vertex(), "cannot use the dummy null_vertex() as a real vertex"); res_insert = curr_sib->members_.emplace(*vi, Node(curr_sib, filtration)); if (!res_insert.second) { // if already in the complex @@ -674,6 +676,10 @@ class Simplex_tree { // Copy before sorting std::vector copy(first, last); std::sort(std::begin(copy), std::end(copy)); + GUDHI_CHECK_code( + for (Vertex_handle v : copy) + GUDHI_CHECK(v != null_vertex(), "cannot use the dummy null_vertex() as a real vertex"); + ) std::vector> to_be_inserted; std::vector> to_be_propagated; -- cgit v1.2.3