[libcamera-devel] [PATCH v2 4/4] libcamera: camera: Return -EINVAL if any stream is null while configure()
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Tue Jun 2 22:43:22 CEST 2020
Hi Umang,
Thank you for the patch.
On Fri, May 15, 2020 at 12:42:54PM +0000, Umang Jain wrote:
> Fail and return the Camera::configure() operation if any
> of the stream turns out to be a nullptr even after the
> PipelineHandler handler seems to have configured the config
> successfully. This prevents a null-dereference below in the
> loop.
>
> Pointed out by Coverity DefectId=279069
>
> Signed-off-by: Umang Jain <email at uajain.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
> src/libcamera/camera.cpp | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp
> index 8c3bb2c..9d2607b 100644
> --- a/src/libcamera/camera.cpp
> +++ b/src/libcamera/camera.cpp
> @@ -777,9 +777,12 @@ int Camera::configure(CameraConfiguration *config)
> p_->activeStreams_.clear();
> for (const StreamConfiguration &cfg : *config) {
> Stream *stream = cfg.stream();
> - if (!stream)
> + if (!stream) {
> LOG(Camera, Fatal)
> << "Pipeline handler failed to update stream configuration";
> + p_->activeStreams_.clear();
> + return -EINVAL;
> + }
>
> stream->configuration_ = cfg;
> p_->activeStreams_.insert(stream);
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list