LIST_FOREACH(node, &aio_handlers, node) {
if (node->fd == fd)
- return node;
+ if (!node->deleted)
+ return node;
}
return NULL;
if (node == NULL) {
/* Alloc and insert if it's not already there */
node = qemu_mallocz(sizeof(AioHandler));
- if (node == NULL)
- return -ENOMEM;
node->fd = fd;
LIST_INSERT_HEAD(&aio_handlers, node, node);
}