[U-Boot] [PATCH] env: fix crash using default -f -a
Stefano Babic
sbabic at denx.de
Fri Oct 5 13:50:05 CEST 2012
On 05/10/2012 12:46, Gerlando Falauto wrote:
> env default -a -f calls env_check_apply on all existing environment
> variables with a NULL value for "newval" as a way of cleaning up.
> This causes string manipulation functions to crash on most architectures.
> So replace a NULL argument with an empty string.
>
> Reported-By: Stefano Babic <sbabic at denx.de>
> Signed-off-by: Gerlando Falauto <gerlando.falauto at keymile.com>
> ---
> common/cmd_nvedit.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/common/cmd_nvedit.c b/common/cmd_nvedit.c
> index 3474bc6..c38b475 100644
> --- a/common/cmd_nvedit.c
> +++ b/common/cmd_nvedit.c
> @@ -213,6 +213,9 @@ int env_check_apply(const char *name, const char *oldval,
> {
> int console = -1;
>
> + /* Default value for NULL to protect string-manipulating functions */
> + newval = newval ? : "";
> +
> /* Check for console redirection */
> if (strcmp(name, "stdin") == 0)
> console = stdin;
>
It fixes the issue.
Tested-by: Stefano Babic <sbabic at denx.de>
Best regards,
Stefano
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
More information about the U-Boot
mailing list