[libcamera-devel] [PATCH] libcamera: Use Size::isNull()

Umang Jain email at uajain.com
Sun Jul 5 09:31:05 CEST 2020


Hi Laurent,

Thanks for the patch.

On 7/3/20 9:17 PM, Laurent Pinchart wrote:
> Use the new Size::isNull() function through the code base to replace
> manual checks. While the new code isn't equivalent, as isNull() checks
> that both width and height are zero, it catches the same conditions in
> practice.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
Reviewed-by: Umang Jain <email at uajain.com>

> ---
>   src/libcamera/pipeline/ipu3/ipu3.cpp     | 2 +-
>   src/libcamera/pipeline/rkisp1/rkisp1.cpp | 4 ++--
>   test/v4l2_subdevice/test_formats.cpp     | 2 +-
>   3 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
> index 00559ce318e1..af51fb2d1718 100644
> --- a/src/libcamera/pipeline/ipu3/ipu3.cpp
> +++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
> @@ -185,7 +185,7 @@ void IPU3CameraConfiguration::adjustStream(StreamConfiguration &cfg, bool scale)
>   		 * Provide a suitable default that matches the sensor aspect
>   		 * ratio.
>   		 */
> -		if (!cfg.size.width || !cfg.size.height) {
> +		if (cfg.size.isNull()) {
>   			cfg.size.width = 1280;
>   			cfg.size.height = 1280 * cio2Configuration_.size.height
>   					/ cio2Configuration_.size.width;
> diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> index 3c3f3f3a8049..051d77a68b55 100644
> --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> @@ -506,7 +506,7 @@ CameraConfiguration::Status RkISP1CameraConfiguration::validate()
>   					    MEDIA_BUS_FMT_SGRBG8_1X8,
>   					    MEDIA_BUS_FMT_SRGGB8_1X8 },
>   					  cfg.size);
> -	if (!sensorFormat_.size.width || !sensorFormat_.size.height)
> +	if (sensorFormat_.size.isNull())
>   		sensorFormat_.size = sensor->resolution();
>   
>   	/*
> @@ -517,7 +517,7 @@ CameraConfiguration::Status RkISP1CameraConfiguration::validate()
>   	 */
>   	const Size size = cfg.size;
>   
> -	if (!cfg.size.width || !cfg.size.height) {
> +	if (cfg.size.isNull()) {
>   		cfg.size.width = 1280;
>   		cfg.size.height = 1280 * sensorFormat_.size.height
>   				/ sensorFormat_.size.width;
> diff --git a/test/v4l2_subdevice/test_formats.cpp b/test/v4l2_subdevice/test_formats.cpp
> index 9635c9948946..679f50b62c4d 100644
> --- a/test/v4l2_subdevice/test_formats.cpp
> +++ b/test/v4l2_subdevice/test_formats.cpp
> @@ -67,7 +67,7 @@ int FormatHandlingTest::run()
>   		return TestFail;
>   	}
>   
> -	if (format.size.width == 0 || format.size.height == 0) {
> +	if (format.size.isNull()) {
>   		cerr << "Failed to update image format" << endl;
>   		return TestFail;
>   	}


More information about the libcamera-devel mailing list