Diff between fe7d07fadd83a3e8a19498e9c955a3500b56de83 and 944273ebcc6beca0a0fd913f785c0c7be0557dce

Changed Files

File Additions Deletions Status
src/shared/queue.c +4 -4 modified

Full Patch

diff --git a/src/shared/queue.c b/src/shared/queue.c
index db4a224..5329a80 100644
--- a/src/shared/queue.c
+++ b/src/shared/queue.c
@@ -327,6 +327,10 @@ unsigned int queue_remove_all(struct queue *queue, queue_match_func_t function,
 
 		queue->entries -= count;
 	} else {
+		queue->head = NULL;
+		queue->tail = NULL;
+		queue->entries = 0;
+
 		while (entry) {
 			struct queue_entry *tmp = entry;
 
@@ -338,10 +342,6 @@ unsigned int queue_remove_all(struct queue *queue, queue_match_func_t function,
 			free(tmp);
 			count++;
 		}
-
-		queue->head = NULL;
-		queue->tail = NULL;
-		queue->entries = 0;
 	}
 
 	return count;