Re: [PATCH -next] staging: fbtft: use strcmp() instead of strncmp() for subsystem lookup

From: YueHaibing
Date: Tue Dec 18 2018 - 08:15:18 EST


sorry, Pls ignore this. The title need fix.

On 2018/12/18 21:09, YueHaibing wrote:
> strncmp() stops comparing when either the end of one of the first two
> arguments is reached or when 'n' characters have been compared, whichever
> comes first.That means that strncmp(s1, s2, n) is equivalent to
> strcmp(s1, s2) if n exceeds the length of s1 or the length of s2.
>
> This patch avoids that the following warning is reported by smatch:
>
> drivers/staging/fbtft/fbtft_device.c:1458
> fbtft_device_init() error: strncmp() '"list"' too small (5 vs 32)
>
> Signed-off-by: YueHaibing <yuehaibing@xxxxxxxxxx>
> ---
> drivers/staging/fbtft/fbtft_device.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/fbtft/fbtft_device.c b/drivers/staging/fbtft/fbtft_device.c
> index 50e97da..0e995028 100644
> --- a/drivers/staging/fbtft/fbtft_device.c
> +++ b/drivers/staging/fbtft/fbtft_device.c
> @@ -1455,7 +1455,7 @@ static int __init fbtft_device_init(void)
> }
>
> /* name=list lists all supported displays */
> - if (strncmp(name, "list", FBTFT_GPIO_NAME_SIZE) == 0) {
> + if (strcmp(name, "list") == 0) {
> pr_info("Supported displays:\n");
>
> for (i = 0; i < ARRAY_SIZE(displays); i++)
>