Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ztimer: correctly unset timer->next (fix ztimer_is_set())
ztimer's machinery depends on figuring out if a timer is currently set or not. It does that using _is_set(), which is also exposed as ztimer_is_set(). Now when a timer expired and got taken of the timer queue using _now_next(), the `next` pointer wasn't unset. This caused _is_set() to wrongly return `true` for that timer. Internally in ztimer, this didn't cause breakage, just an unnecessary iteration of the timer queue by _delete_timer_from_list(). But this also broke the public ztimer_is_set(). This commit fixes the issue by correctly NULLing the timer's `next` pointer when the timer triggers.
- Loading branch information