From 19ea7d4a4f98681584614fb9692862c104c2916d Mon Sep 17 00:00:00 2001 From: Ivey Date: Wed, 20 Nov 2024 18:35:31 -0500 Subject: [PATCH] wifi: Bypass do..while check after splice --- src/wifi/model/wifi-mac-queue-container.cc | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/wifi/model/wifi-mac-queue-container.cc b/src/wifi/model/wifi-mac-queue-container.cc index 7fa25892f..f335242b0 100644 --- a/src/wifi/model/wifi-mac-queue-container.cc +++ b/src/wifi/model/wifi-mac-queue-container.cc @@ -166,14 +166,16 @@ WifiMacQueueContainer::DoExtractExpiredMpdus(ContainerQueue& queue) const ++lastExpiredIt; } - if (lastExpiredIt != firstExpiredIt) + if (lastExpiredIt == firstExpiredIt) { - // transfer non-inflight MPDUs with expired lifetime to the tail of m_expiredQueue - m_expiredQueue.splice(m_expiredQueue.end(), queue, firstExpiredIt, lastExpiredIt); - ret->second = m_expiredQueue.end(); + break; } - } while (lastExpiredIt != firstExpiredIt); + // transfer non-inflight MPDUs with expired lifetime to the tail of m_expiredQueue + m_expiredQueue.splice(m_expiredQueue.end(), queue, firstExpiredIt, lastExpiredIt); + ret->second = m_expiredQueue.end(); + + } while (true); return *ret; }