Diff between b68c03b95d0ec192226eecd352e0057ff365e504 and 015f2c98e26447cfe77553f08cc7d99d36bec2a5

Changed Files

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

Full Patch

diff --git a/src/shared/queue.c b/src/shared/queue.c
index d94b34d..3507ed1 100644
--- a/src/shared/queue.c
+++ b/src/shared/queue.c
@@ -362,9 +362,10 @@ unsigned int queue_remove_all(struct queue *queue, queue_match_func_t function,
 	if (function) {
 		while (entry) {
 			void *data;
+			unsigned int entries = queue->entries;
 
 			data = queue_remove_if(queue, function, user_data);
-			if (!data)
+			if (entries == queue->entries)
 				break;
 
 			if (destroy)