[libcamera-devel] [PATCH v2] libcamera: ipa_module: prevent uninitialised access

Laurent Pinchart laurent.pinchart at ideasonboard.com
Thu Aug 1 16:32:54 CEST 2019


Hi Kieran,

Thank you for the patch.

On Thu, Aug 01, 2019 at 12:38:50PM +0100, Kieran Bingham wrote:
> The IPAModule::loadIPAModuleInfo() function includes a *data pointer
> which is used as a null-pointer comparison in the error path with a
> conditional statement of "if (ret || !data)".
> 
> The data variable is not initialised, and a single error path evaluates
> this as "if (true || uninitialised)".
> 
> Whilst this error path does not incorrectly utilise the uninitialised
> data, as the ret evaluates to true already, it does leave a statement
> which includes an uninitialised variable.
> 
> Help the static analysers by initialising the data variable when it is
> defined.
> 
> Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>

Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>

> ---
> v2:
>  - s/NULL/nullptr/
>  - Fix spelling in commit-message
> 
>  src/libcamera/ipa_module.cpp | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/libcamera/ipa_module.cpp b/src/libcamera/ipa_module.cpp
> index 003611625214..99d308efd47b 100644
> --- a/src/libcamera/ipa_module.cpp
> +++ b/src/libcamera/ipa_module.cpp
> @@ -291,7 +291,7 @@ int IPAModule::loadIPAModuleInfo()
>  		return ret;
>  	}
>  
> -	void *data;
> +	void *data = nullptr;
>  	size_t dataSize;
>  	void *map;
>  	size_t soSize;

-- 
Regards,

Laurent Pinchart


More information about the libcamera-devel mailing list