[libcamera-devel] [PATCH] hal: Fix comparison of unsigned integer < 0

Niklas Söderlund niklas.soderlund at ragnatech.se
Sat Aug 17 15:19:29 CEST 2019


Hi Laurent,

Thanks for your work.

On 2019-08-15 15:23:32 +0300, Laurent Pinchart wrote:
> The CameraHalManager::getCameraInfo() validates the camera id it
> receives from the camera service, and in doing so generates a compiler
> error as the id is an unsigned integer and can never be negative:
> 
> ../src/android/camera_hal_manager.cpp: In member function ‘CameraProxy* CameraHalManager::open(unsigned int, const hw_module_t*)’:
> ../src/android/camera_hal_manager.cpp:89:9: error: comparison of unsigned expression < 0 is always false [-Werror=type-limits]
>   if (id < 0 || id >= numCameras()) {
> 
> Fix it by removing the unneeded comparison.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>

Reviewed-by: Niklas Söderlund <niklas.soderlund at ragnatech.se>

> ---
>  src/android/camera_hal_manager.cpp | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/android/camera_hal_manager.cpp b/src/android/camera_hal_manager.cpp
> index 1e66f63240da..37ba01355258 100644
> --- a/src/android/camera_hal_manager.cpp
> +++ b/src/android/camera_hal_manager.cpp
> @@ -86,7 +86,7 @@ void CameraHalManager::run()
>  CameraProxy *CameraHalManager::open(unsigned int id,
>  				    const hw_module_t *hardwareModule)
>  {
> -	if (id < 0 || id >= numCameras()) {
> +	if (id >= numCameras()) {
>  		LOG(HAL, Error) << "Invalid camera id '" << id << "'";
>  		return nullptr;
>  	}
> -- 
> 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