[libcamera-devel] [PATCH 2/3] libcamera: camera_sensor: Store subdevice in std::unique_ptr
Niklas Söderlund
niklas.soderlund at ragnatech.se
Sun May 3 03:29:25 CEST 2020
Hi Laurent,
Thanks for your work.
On 2020-05-02 16:53:54 +0300, Laurent Pinchart wrote:
> Avoid the need for a manual delete in the destructor by using a unique
> pointer.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund at ragnatech.se>
> ---
> src/libcamera/camera_sensor.cpp | 5 ++---
> src/libcamera/include/camera_sensor.h | 3 ++-
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/src/libcamera/camera_sensor.cpp b/src/libcamera/camera_sensor.cpp
> index ab2bed561cc6..9cfb3847dda6 100644
> --- a/src/libcamera/camera_sensor.cpp
> +++ b/src/libcamera/camera_sensor.cpp
> @@ -133,7 +133,6 @@ LOG_DEFINE_CATEGORY(CameraSensor);
> CameraSensor::CameraSensor(const MediaEntity *entity)
> : entity_(entity), properties_(properties::properties)
> {
> - subdev_ = new V4L2Subdevice(entity);
> }
>
> /**
> @@ -141,7 +140,6 @@ CameraSensor::CameraSensor(const MediaEntity *entity)
> */
> CameraSensor::~CameraSensor()
> {
> - delete subdev_;
> }
>
> /**
> @@ -197,7 +195,8 @@ int CameraSensor::init()
> else
> model_ = entityName;
>
> - /* Open the subdev. */
> + /* Create and open the subdev. */
> + subdev_ = std::make_unique<V4L2Subdevice>(entity_);
> ret = subdev_->open();
> if (ret < 0)
> return ret;
> diff --git a/src/libcamera/include/camera_sensor.h b/src/libcamera/include/camera_sensor.h
> index f39ea96dc77a..92cd90353e72 100644
> --- a/src/libcamera/include/camera_sensor.h
> +++ b/src/libcamera/include/camera_sensor.h
> @@ -7,6 +7,7 @@
> #ifndef __LIBCAMERA_CAMERA_SENSOR_H__
> #define __LIBCAMERA_CAMERA_SENSOR_H__
>
> +#include <memory>
> #include <string>
> #include <vector>
>
> @@ -68,7 +69,7 @@ protected:
>
> private:
> const MediaEntity *entity_;
> - V4L2Subdevice *subdev_;
> + std::unique_ptr<V4L2Subdevice> subdev_;
> std::string model_;
>
> std::vector<unsigned int> mbusCodes_;
> --
> Regards,
>
> Laurent Pinchart
>
> _______________________________________________
> libcamera-devel mailing list
> libcamera-devel at lists.libcamera.org
> https://lists.libcamera.org/listinfo/libcamera-devel
--
Regards,
Niklas Söderlund
More information about the libcamera-devel
mailing list