diff --git a/libraries/networking/src/udt/LossList.cpp b/libraries/networking/src/udt/LossList.cpp index ab66634b3e..5dbdac6de0 100644 --- a/libraries/networking/src/udt/LossList.cpp +++ b/libraries/networking/src/udt/LossList.cpp @@ -52,9 +52,10 @@ void LossList::insert(SequenceNumber start, SequenceNumber end) { if (end > it->second) { // If it goes further, find the actual end - auto it2 = find_if(it, _lossList.end(), [&end](pair pair){ + auto it2 = find_if_not(it, _lossList.end(), [&end](pair pair){ return end <= pair.second; }); + --it2; // If it ends inside a segment, change end (segment will be deleted) // Or backup iterator so segment doesn't get deleted