From: Rosen Penev Date: Mon, 26 Sep 2022 22:55:09 +0000 (-0700) Subject: manual find_if conversion X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=edf1604139a961595e0981c16d9a9233d4e91037;p=libmatroska manual find_if conversion Signed-off-by: Rosen Penev --- diff --git a/src/KaxSeekHead.cpp b/src/KaxSeekHead.cpp index 019ea37..5941f9f 100644 --- a/src/KaxSeekHead.cpp +++ b/src/KaxSeekHead.cpp @@ -89,16 +89,12 @@ KaxSeek * KaxSeekHead::FindNextOf(const KaxSeek &aPrev) const KaxSeek *tmp; // look for the previous in the list - for (Itr = begin(); Itr != end(); ++Itr) { - if (*Itr == static_cast(&aPrev)) - break; - } - - if (Itr != end()) { - ++Itr; - for (; Itr != end(); ++Itr) { - if (EbmlId(*(*Itr)) == EBML_ID(KaxSeek)) { - tmp = static_cast(*Itr); + auto it = std::find_if(this->begin(), this->end(), [&](auto e){ return e == static_cast(&aPrev); }); + if (it != end()) { + ++it; + for (; it != end(); ++it) { + if (EbmlId(*(*it)) == EBML_ID(KaxSeek)) { + tmp = static_cast(*it); if (tmp->IsEbmlId(aPrev)) return tmp; }