1
0
Fork 0
forked from len0rd/rockbox

Slightly safer version of queue_delete()

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8425 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Linus Nielsen Feltzing 2006-01-23 10:59:07 +00:00
parent 765e0f89d8
commit dacc6f3821

View file

@ -86,21 +86,28 @@ void queue_init(struct event_queue *q)
void queue_delete(struct event_queue *q) void queue_delete(struct event_queue *q)
{ {
int i; int i;
bool found = false;
/* Find the queue to be deleted */ /* Find the queue to be deleted */
for(i = 0;i < num_queues;i++) for(i = 0;i < num_queues;i++)
{ {
if(all_queues[i] == q) if(all_queues[i] == q)
{
found = true;
break; break;
}
} }
/* Move the following queues up in the list */ if(found)
for(;i < num_queues-1;i++)
{ {
all_queues[i] = all_queues[i+1]; /* Move the following queues up in the list */
for(;i < num_queues-1;i++)
{
all_queues[i] = all_queues[i+1];
}
num_queues--;
} }
num_queues--;
} }
void queue_wait(struct event_queue *q, struct event *ev) void queue_wait(struct event_queue *q, struct event *ev)