From 77b5ad3b1454a0184fd91215982d88a150b65d98 Mon Sep 17 00:00:00 2001
From: Philip Trettner <philip.trettner@rwth-aachen.de>
Date: Mon, 26 Sep 2022 17:18:10 +0200
Subject: [PATCH] filtered range initial skip fix

---
 src/polymesh/iterators.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/polymesh/iterators.hh b/src/polymesh/iterators.hh
index 710931c..cf88fe4 100644
--- a/src/polymesh/iterators.hh
+++ b/src/polymesh/iterators.hh
@@ -104,7 +104,7 @@ struct filtering_iterator final : smart_iterator<filtering_iterator<IteratorT, P
 {
     filtering_iterator(IteratorT it, PredT p) : it(std::forward<IteratorT>(it)), pred(std::forward<PredT>(p))
     {
-        if (it.is_valid())
+        if (it.is_valid() && !pred(*it))
             advance(); // skip initially false elements
     }
 
-- 
GitLab