node-driver: Make sure the discont clock flag does not remain set forever

If the timer was canceled, the discont flag needs to be set. But in the
next cycle, unless the timer was canceled again, that flag should not
remain set.
This commit is contained in:
Carlos Rafael Giani 2025-07-17 16:32:15 +02:00
parent f4f548fbe6
commit 14b242c737

View file

@ -479,10 +479,8 @@ static void on_timeout(struct spa_source *source)
this->clock->rate_diff = corr;
this->clock->next_nsec = this->next_time + nsec_offset;
if (SPA_UNLIKELY(timer_was_canceled)) {
SPA_FLAG_UPDATE(this->clock->flags,
SPA_IO_CLOCK_FLAG_DISCONT, true);
}
SPA_FLAG_UPDATE(this->clock->flags, SPA_IO_CLOCK_FLAG_DISCONT,
timer_was_canceled);
}
spa_node_call_ready(&this->callbacks,