diff --git a/src/util/IntrusiveForwardList.hxx b/src/util/IntrusiveForwardList.hxx
index 5bd643c7f..a00d06050 100644
--- a/src/util/IntrusiveForwardList.hxx
+++ b/src/util/IntrusiveForwardList.hxx
@@ -193,9 +193,11 @@ public:
 		return *Cast(head.next);
 	}
 
-	void pop_front() noexcept {
+	reference pop_front() noexcept {
+		auto &i = front();
 		head.next = head.next->next;
 		--counter;
+		return i;
 	}
 
 	class const_iterator;