From ca342fb3b4bbf1579a0e815b2789c94c5f08b701 Mon Sep 17 00:00:00 2001 From: Atlante45 Date: Fri, 31 Jul 2015 18:39:24 -0700 Subject: [PATCH] Fix std::find_if --- libraries/networking/src/udt/Connection.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/libraries/networking/src/udt/Connection.cpp b/libraries/networking/src/udt/Connection.cpp index dd34a2bad2..18e3fb9668 100644 --- a/libraries/networking/src/udt/Connection.cpp +++ b/libraries/networking/src/udt/Connection.cpp @@ -466,8 +466,8 @@ void Connection::processACK2(std::unique_ptr controlPacket) { controlPacket->readPrimitive(&subSequenceNumber); // check if we had that subsequence number in our map - auto it = std::find_if(_sentACKs.begin(), _sentACKs.end(), [subSequenceNumber](const ACKListPair& pair){ - return subSequenceNumber >= pair.first; + auto it = std::find_if_not(_sentACKs.begin(), _sentACKs.end(), [&subSequenceNumber](const ACKListPair& pair){ + return pair.first < subSequenceNumber; }); if (it != _sentACKs.end()) { @@ -487,14 +487,14 @@ void Connection::processACK2(std::unique_ptr controlPacket) { if (it->second.first > _lastReceivedAcknowledgedACK) { _lastReceivedAcknowledgedACK = it->second.first; } - - // erase this sub-sequence number and anything below it now that we've gotten our timing information - _sentACKs.erase(_sentACKs.begin(), it); - } else { + } else if (it->first < subSequenceNumber) { Q_UNREACHABLE(); } } + // erase this sub-sequence number and anything below it now that we've gotten our timing information + _sentACKs.erase(_sentACKs.begin(), it); + _stats.recordReceivedACK2(); }