From a7b71d974b6c078983c9635f9f3f25787ade1df0 Mon Sep 17 00:00:00 2001 From: Roland Winklmeier Date: Tue, 8 Sep 2015 11:30:06 +0000 Subject: [PATCH] Fix segfault in CSequence::operator <() --- src/blackmisc/sequence.h | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/blackmisc/sequence.h b/src/blackmisc/sequence.h index 14522cd64..80e4b37ca 100644 --- a/src/blackmisc/sequence.h +++ b/src/blackmisc/sequence.h @@ -518,10 +518,7 @@ namespace BlackMisc //! Less than operator. friend bool operator <(const CSequence &a, const CSequence &b) { - auto mm = std::mismatch(a.begin(), a.begin() + std::max(a.size(), b.size()), b.begin()); - if (mm.first == a.end()) { return mm.second != b.end(); } - if (mm.second == b.end()) { return false; } - return *mm.first < *mm.second; + return std::lexicographical_compare(a.begin(), a.end(), b.begin(), b.end()); } //! Greater than operator.