strncmp(str, const, len) is error-prone because len
is easy to have typo.
The example is the hard-coded len has counting error
or sizeof(const) forgets - 1.
So we prefer using newly introduced str_has_prefix()
to substitute such strncmp to make code better.
Signed-off-by: Chuhong Yuan <[email protected]>
---
kernel/power/main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/power/main.c b/kernel/power/main.c
index bdbd605c4215..5e5f64bb3a43 100644
--- a/kernel/power/main.c
+++ b/kernel/power/main.c
@@ -495,7 +495,7 @@ static suspend_state_t decode_state(const char *buf, size_t n)
len = p ? p - buf : n;
/* Check hibernation first. */
- if (len == 4 && !strncmp(buf, "disk", len))
+ if (len == 4 && str_has_prefix(buf, "disk"))
return PM_SUSPEND_MAX;
#ifdef CONFIG_SUSPEND
--
2.20.1
On Friday, August 9, 2019 9:10:23 AM CEST Chuhong Yuan wrote:
> strncmp(str, const, len) is error-prone because len
> is easy to have typo.
> The example is the hard-coded len has counting error
> or sizeof(const) forgets - 1.
> So we prefer using newly introduced str_has_prefix()
> to substitute such strncmp to make code better.
>
> Signed-off-by: Chuhong Yuan <[email protected]>
> ---
> kernel/power/main.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/power/main.c b/kernel/power/main.c
> index bdbd605c4215..5e5f64bb3a43 100644
> --- a/kernel/power/main.c
> +++ b/kernel/power/main.c
> @@ -495,7 +495,7 @@ static suspend_state_t decode_state(const char *buf, size_t n)
> len = p ? p - buf : n;
>
> /* Check hibernation first. */
> - if (len == 4 && !strncmp(buf, "disk", len))
> + if (len == 4 && str_has_prefix(buf, "disk"))
> return PM_SUSPEND_MAX;
>
> #ifdef CONFIG_SUSPEND
>
Applied, thanks!