From 1761085167b23cf217d0b81553df5aa3c61e2c57 Mon Sep 17 00:00:00 2001 From: Martin Nowak Date: Fri, 22 Nov 2013 05:38:44 +0100 Subject: [PATCH] fix #401 - [regression] vibe looses static file requests - The CoreTaskQueue implementation was broken and lost all but the first CoreTask. --- source/vibe/core/core.d | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/source/vibe/core/core.d b/source/vibe/core/core.d index 24fd85fcfb..4c9b59acc3 100644 --- a/source/vibe/core/core.d +++ b/source/vibe/core/core.d @@ -1019,14 +1019,17 @@ private struct CoreTaskQueue { @property bool empty() const { return first is null; } @property CoreTask front() { return first; } - + void insertBack(CoreTask task) { assert(task.m_queue == null); assert(task.m_nextInQueue is null); task.m_queue = &this; - if (last) last.m_nextInQueue = task; - else first = last = task; + if (empty) + first = task; + else + last.m_nextInQueue = task; + last = task; } void popFront()