jack: don't try to consume port without data

Or else we handle old data.
This commit is contained in:
Wim Taymans 2020-02-18 13:26:15 +01:00
parent 1239009d30
commit e6c3619521

View file

@ -2930,7 +2930,9 @@ static inline void *get_buffer_input_float(struct client *c, struct port *p, jac
pw_log_trace(NAME" %p: port %p mix %d.%d get buffer %d", pw_log_trace(NAME" %p: port %p mix %d.%d get buffer %d",
c, p, p->id, mix->id, frames); c, p, p->id, mix->id, frames);
io = mix->io; io = mix->io;
if (io == NULL || io->buffer_id >= mix->n_buffers) if (io == NULL ||
io->status != SPA_STATUS_HAVE_DATA ||
io->buffer_id >= mix->n_buffers)
continue; continue;
io->status = SPA_STATUS_NEED_DATA; io->status = SPA_STATUS_NEED_DATA;
@ -2964,7 +2966,9 @@ static inline void *get_buffer_input_midi(struct client *c, struct port *p, jack
c, p, p->id, mix->id, frames); c, p, p->id, mix->id, frames);
io = mix->io; io = mix->io;
if (io == NULL || io->buffer_id >= mix->n_buffers) if (io == NULL ||
io->status != SPA_STATUS_HAVE_DATA ||
io->buffer_id >= mix->n_buffers)
continue; continue;
io->status = SPA_STATUS_NEED_DATA; io->status = SPA_STATUS_NEED_DATA;