From c16f777b289fb617217c8c19aa320fbe90f38209 Mon Sep 17 00:00:00 2001 From: Elvis Angelaccio Date: Sun, 31 May 2020 23:43:46 +0200 Subject: [PATCH] Fix FIFO usage `m_propriorityQueue` and `m_queue` are used as FIFO queues, so we need to use `takeFirst()` instead of `takeLast()` when removing elements from the queue. While at it, add a comment so that we will remember these are FIFO queues. --- src/kitemviews/private/kdirectorycontentscounter.cpp | 2 +- src/kitemviews/private/kdirectorycontentscounter.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/kitemviews/private/kdirectorycontentscounter.cpp b/src/kitemviews/private/kdirectorycontentscounter.cpp index 05a6ff4474..4d6a4861ca 100644 --- a/src/kitemviews/private/kdirectorycontentscounter.cpp +++ b/src/kitemviews/private/kdirectorycontentscounter.cpp @@ -104,7 +104,7 @@ void KDirectoryContentsCounter::slotResult(const QString& path, int count, long } if (!m_priorityQueue.isEmpty()) { - startWorker(m_priorityQueue.takeLast()); + startWorker(m_priorityQueue.takeFirst()); } else if (!m_queue.isEmpty()) { startWorker(m_queue.takeFirst()); } diff --git a/src/kitemviews/private/kdirectorycontentscounter.h b/src/kitemviews/private/kdirectorycontentscounter.h index 01bf307791..65c4bcb1ba 100644 --- a/src/kitemviews/private/kdirectorycontentscounter.h +++ b/src/kitemviews/private/kdirectorycontentscounter.h @@ -72,6 +72,7 @@ private: private: KFileItemModel* m_model; + // Used as FIFO queues. QLinkedList m_priorityQueue; QLinkedList m_queue;