From 9035f1d22beec82507c1c9137e7c9fb5c4d0fbc6 Mon Sep 17 00:00:00 2001 From: "Chris Hall (GMCH)" Date: Mon, 14 Dec 2009 12:00:43 +0000 Subject: Fix to mqueue_dequeue in lib/mqueue.c When adding to signal queue, must use mq->kick.signal.head == NULL to check for an empty queue (not mq->kick.signal.tail == NULL). --- lib/mqueue.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lib/mqueue.c') diff --git a/lib/mqueue.c b/lib/mqueue.c index 7b93e4b0..055086ed 100644 --- a/lib/mqueue.c +++ b/lib/mqueue.c @@ -437,14 +437,14 @@ mqueue_dequeue(mqueue_queue mq, int wait, void* arg) mtsig = arg ; dassert(mtsig != NULL) ; - last = mq->kick.signal.tail ; - if (last == NULL) + if (mq->kick.signal.head == NULL) { mq->kick.signal.head = mtsig ; mtsig->prev = (void*)mq ; } else { + last = mq->kick.signal.tail ; last->next = mtsig ; mtsig->prev = last ; } -- cgit v1.2.3