
--- scribo/ChangeLog | 5 +++++ .../primitive/link/internal/link_functor_base.hh | 9 +++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/scribo/ChangeLog b/scribo/ChangeLog index baca941..df923b8 100644 --- a/scribo/ChangeLog +++ b/scribo/ChangeLog @@ -1,3 +1,8 @@ +2011-03-21 Guillaume Lazzara <z@lrde.epita.fr> + + * scribo/primitive/link/internal/link_functor_base.hh: Stop + neighbor lookup when a separator is found. + 2011-03-14 Guillaume Lazzara <z@lrde.epita.fr> Fix namespace ambiguities. diff --git a/scribo/scribo/primitive/link/internal/link_functor_base.hh b/scribo/scribo/primitive/link/internal/link_functor_base.hh index d214c91..5b4fefa 100644 --- a/scribo/scribo/primitive/link/internal/link_functor_base.hh +++ b/scribo/scribo/primitive/link/internal/link_functor_base.hh @@ -232,9 +232,14 @@ namespace scribo { (void) start_point; mln_value(L) v = this->labeled_image_(p); - bool is_separator = this->components_.separators()(p); - if (is_separator) + // We found that we are passing through a separator. We stop + // looking up for a neighbor by returning true. + // + // Since we don't want to link with a separator, + // verify_link_criterion will invalidate this link. + // + if (this->components_.has_separators() && this->components_.separators()(p)) return true; return v != literal::zero // Not the background -- 1.5.6.5