mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-11 13:30:07 -05:00
stream: decrement busy counter when releasing dequeued buffers
For buffers on the 'dequeued' list, the busy counter was already incremented in impl_node_process_input(). So it must be decremented again when these buffers are removed.
This commit is contained in:
parent
314ff82ff0
commit
d2ce51d504
1 changed files with 9 additions and 1 deletions
|
|
@ -709,7 +709,15 @@ static void clear_buffers(struct pw_stream *stream)
|
|||
}
|
||||
}
|
||||
impl->n_buffers = 0;
|
||||
clear_queue(impl, &impl->dequeued);
|
||||
if (impl->direction == SPA_DIRECTION_INPUT) {
|
||||
struct buffer *b;
|
||||
|
||||
while ((b = pop_queue(impl, &impl->dequeued))) {
|
||||
if (b->busy)
|
||||
ATOMIC_DEC(b->busy->count);
|
||||
}
|
||||
} else
|
||||
clear_queue(impl, &impl->dequeued);
|
||||
clear_queue(impl, &impl->queued);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue