Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

equeue_unqueue corrupting queue list if done on a sibling. #11

Open
daid opened this issue Nov 6, 2018 · 0 comments
Open

equeue_unqueue corrupting queue list if done on a sibling. #11

daid opened this issue Nov 6, 2018 · 0 comments

Comments

@daid
Copy link

daid commented Nov 6, 2018

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)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant