link: use DISABLED flag on port of inactive links

Don't unlink the ports of an inactive link because then it might be
possible that the scheduler can't recycle a buffer, instead use
a port flag to mark the ports disabled and change to scheduler to
skip those ports.
This commit is contained in:
Wim Taymans 2018-01-18 15:39:03 +01:00
parent a8fa4383a1
commit 0eb44b340a
6 changed files with 16 additions and 9 deletions

View file

@ -305,7 +305,7 @@ static inline void try_pull(struct impl *this, uint32_t frames, bool do_pull)
struct spa_io_buffers *io = this->io;
if (spa_list_is_empty(&this->ready) && do_pull) {
spa_log_trace(this->log, "alsa-util %p: %d", this, io->status);
spa_log_trace(this->log, "a2dp-sink %p: %d", this, io->status);
io->status = SPA_STATUS_NEED_BUFFER;
if (this->range) {
this->range->offset = this->sample_count * this->frame_size;