Skip to content

Commit ff98750

Browse files
committed
Fix bug in Queue
1 parent 371c25f commit ff98750

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/asynchronous/queues.d

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ class Queue(T, size_t maxSize = 0)
148148
*/
149149
@property bool empty()
150150
{
151-
return queue.empty;
151+
return length == 0;
152152
}
153153

154154
/**
@@ -183,13 +183,13 @@ class Queue(T, size_t maxSize = 0)
183183
putter.setResult;
184184
putters.popFront;
185185
}
186-
else if (queue.empty)
186+
else if (length == 0)
187187
{
188188
auto waiter = new Waiter(eventLoop);
189189

190-
putters ~= waiter;
190+
getters ~= waiter;
191191
eventLoop.waitFor(waiter);
192-
assert(!queue.empty);
192+
assert(length > 0);
193193
}
194194

195195
return get_;
@@ -216,7 +216,7 @@ class Queue(T, size_t maxSize = 0)
216216
}
217217
else
218218
{
219-
enforceEx!QueueEmptyException(!queue.empty);
219+
enforceEx!QueueEmptyException(length > 0);
220220
}
221221

222222
return get_;
@@ -252,7 +252,7 @@ class Queue(T, size_t maxSize = 0)
252252

253253
if (!getters.empty)
254254
{
255-
assert(queue.empty, "queue non-empty, why are getters waiting?");
255+
assert(length == 0, "queue non-empty, why are getters waiting?");
256256

257257
auto getter = getters.front;
258258
getter.setResult;
@@ -289,7 +289,7 @@ class Queue(T, size_t maxSize = 0)
289289

290290
if (!getters.empty)
291291
{
292-
assert(queue.empty, "queue non-empty, why are getters waiting?");
292+
assert(length == 0, "queue non-empty, why are getters waiting?");
293293

294294
auto getter = getters.front;
295295
getter.setResult;

0 commit comments

Comments
 (0)