equeue icon indicating copy to clipboard operation
equeue copied to clipboard

equeue_unqueue corrupting queue list if done on a sibling.

Open daid opened this issue 7 years ago • 0 comments

I'm still investigating this fully, but I think the equeue_unqueue function corrupts the linked list administration of the event queue if cancel is called on a event that is a sibling of the main linked list.

equeue_unqueue seems to assume &e->next == e->next->ref, which is no longer true on a sibling, as I think e->next is basicly invalid on a sibling (as e->next is also not updated if an entry is inserted after the parent of the sibling)

Not sure what a proper fix is yet. (Note, found this issue as part of mbed-os)

daid avatar Nov 06 '18 18:11 daid