[libcamera-devel] [PATCH] hal: Fix comparison of unsigned integer < 0
Jacopo Mondi
jacopo at jmondi.org
Thu Aug 15 14:35:13 CEST 2019
Hi Laurent,
thanks for the fix
On Thu, Aug 15, 2019 at 03:23:32PM +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.
>
If relevant please add which compiler reports the error, as on clang-8 it
is not reported. FYI with gcc-9.1 I see it as well.
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo at jmondi.org>
Thanks
j
> ---
> 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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://lists.libcamera.org/pipermail/libcamera-devel/attachments/20190815/e4e7a25c/attachment.sig>
More information about the libcamera-devel
mailing list