
newval pointer is not checked before its usage, inside env_check_apply().
Signed-off-by: Stefano Babic sbabic@denx.de CC: gerlando.falauto@keymile.com --- common/cmd_nvedit.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/common/cmd_nvedit.c b/common/cmd_nvedit.c index 3474bc6..8144c85 100644 --- a/common/cmd_nvedit.c +++ b/common/cmd_nvedit.c @@ -272,7 +272,7 @@ int env_check_apply(const char *name, const char *oldval, /* * Switch to new baudrate if new baudrate is supported */ - if (strcmp(name, "baudrate") == 0) { + if ((strcmp(name, "baudrate") == 0) && (newval != NULL)) { int baudrate = simple_strtoul(newval, NULL, 10); int i; for (i = 0; i < N_BAUDRATES; ++i) { @@ -308,12 +308,12 @@ int env_check_apply(const char *name, const char *oldval, * Some variables should be updated when the corresponding * entry in the environment is changed */ - if (strcmp(name, "loadaddr") == 0) { + if ((strcmp(name, "loadaddr") == 0) && (newval != NULL)) { load_addr = simple_strtoul(newval, NULL, 16); return 0; } #if defined(CONFIG_CMD_NET) - else if (strcmp(name, "bootfile") == 0) { + else if ((strcmp(name, "bootfile") == 0) && (newval != NULL)) { copy_filename(BootFile, newval, sizeof(BootFile)); return 0; }