mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-05 13:30:02 -05:00
spa: libcamera: source: freeBuffers(): split pending request removal
`freeBuffers()` should undo exactly what `allocBuffers()` does. However,
it currently also clears `impl::pendingRequests`, but that is filled
by `spa_libcamera_buffer_recycle()` during `spa_libcamera_alloc_buffers()`.
So remove the clearing of `impl::pendingRequests` from `freeBuffers()` and
move it directly into `spa_libcamera_clear_buffers()`.
(cherry picked from commit 89545946fd)
This commit is contained in:
parent
93426bca4b
commit
a5cb888578
1 changed files with 1 additions and 1 deletions
|
|
@ -322,7 +322,6 @@ int allocBuffers(struct impl *impl, struct port *port, unsigned int count)
|
|||
|
||||
void freeBuffers(struct impl *impl, struct port *port)
|
||||
{
|
||||
impl->pendingRequests.clear();
|
||||
impl->requestPool.clear();
|
||||
impl->allocator->free(port->streamConfig.stream());
|
||||
}
|
||||
|
|
@ -353,6 +352,7 @@ int spa_libcamera_clear_buffers(struct impl *impl, struct port *port)
|
|||
d[0].type = SPA_ID_INVALID;
|
||||
}
|
||||
|
||||
impl->pendingRequests.clear();
|
||||
freeBuffers(impl, port);
|
||||
port->n_buffers = 0;
|
||||
port->ring = SPA_RINGBUFFER_INIT();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue