[libcamera-devel] [PATCH v4 21/21] v4l2: v4l2_camera: Fix stream selection for buffer operations

Laurent Pinchart laurent.pinchart at ideasonboard.com
Wed Jul 8 17:32:11 CEST 2020


Hi Paul,

Thank you for the patch.

On Wed, Jul 08, 2020 at 10:44:17PM +0900, Paul Elder wrote:
> The buffer operations in V4L2Camera were getting the stream from the
> wrong place. Fix it.
> 
> Signed-off-by: Paul Elder <paul.elder at ideasonboard.com>

Good catch.

Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>

> ---
> New in v4
> ---
>  src/v4l2/v4l2_camera.cpp | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/src/v4l2/v4l2_camera.cpp b/src/v4l2/v4l2_camera.cpp
> index 9f81c97..61bca07 100644
> --- a/src/v4l2/v4l2_camera.cpp
> +++ b/src/v4l2/v4l2_camera.cpp
> @@ -160,7 +160,7 @@ int V4L2Camera::validateConfiguration(const PixelFormat &pixelFormat,
>  
>  int V4L2Camera::allocBuffers(unsigned int count)
>  {
> -	Stream *stream = *camera_->streams().begin();
> +	Stream *stream = config_->at(0).stream();
>  
>  	return bufferAllocator_->allocate(stream);
>  }
> @@ -169,13 +169,13 @@ void V4L2Camera::freeBuffers()
>  {
>  	pendingRequests_.clear();
>  
> -	Stream *stream = *camera_->streams().begin();
> +	Stream *stream = config_->at(0).stream();
>  	bufferAllocator_->free(stream);
>  }
>  
>  FileDescriptor V4L2Camera::getBufferFd(unsigned int index)
>  {
> -	Stream *stream = *camera_->streams().begin();
> +	Stream *stream = config_->at(0).stream();
>  	const std::vector<std::unique_ptr<FrameBuffer>> &buffers =
>  		bufferAllocator_->buffers(stream);
>  

-- 
Regards,

Laurent Pinchart


More information about the libcamera-devel mailing list