Fixes to multilevelqueue's iterator.
This commit is contained in:
parent
dde0814837
commit
f35e09fe0d
|
@ -35,7 +35,11 @@ public:
|
||||||
using difference_type = typename std::pointer_traits<pointer>::difference_type;
|
using difference_type = typename std::pointer_traits<pointer>::difference_type;
|
||||||
|
|
||||||
friend bool operator==(const iterator_impl& lhs, const iterator_impl& rhs) {
|
friend bool operator==(const iterator_impl& lhs, const iterator_impl& rhs) {
|
||||||
return (lhs.IsEnd() && rhs.IsEnd()) || lhs.it == rhs.it;
|
if (lhs.IsEnd() && rhs.IsEnd())
|
||||||
|
return true;
|
||||||
|
if (lhs.current_priority == rhs.current_priority)
|
||||||
|
return lhs.it == rhs.it;
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
friend bool operator!=(const iterator_impl& lhs, const iterator_impl& rhs) {
|
friend bool operator!=(const iterator_impl& lhs, const iterator_impl& rhs) {
|
||||||
|
|
Reference in New Issue