From: Marek BehĂșn <marek.behun@nic.cz>
Date: Sun, 17 Oct 2021 15:36:34 +0000 (+0200)
Subject: env: Early return from env_get_f() on NULL name
X-Git-Tag: v2025.01-rc5-pxa1908~1671^2~4
X-Git-Url: http://git.dujemihanovic.xyz/projects?a=commitdiff_plain;h=6b6e3eeba9f96b5d908a9b46b7bb25e76109a0c7;p=u-boot.git

env: Early return from env_get_f() on NULL name

Test non-NULL name immediately, not in env_match().

Signed-off-by: Marek BehĂșn <marek.behun@nic.cz>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

diff --git a/cmd/nvedit.c b/cmd/nvedit.c
index 8d53579d92..063cc76282 100644
--- a/cmd/nvedit.c
+++ b/cmd/nvedit.c
@@ -708,9 +708,6 @@ char *from_env(const char *envvar)
 
 static const char *env_match(const char *p, const char *s1)
 {
-	if (s1 == NULL || *s1 == '\0')
-		return NULL;
-
 	while (*s1 == *p++)
 		if (*s1++ == '=')
 			return p;
@@ -728,6 +725,9 @@ int env_get_f(const char *name, char *buf, unsigned len)
 {
 	const char *env, *p, *end;
 
+	if (name == NULL || *name == '\0')
+		return -1;
+
 	if (gd->env_valid == ENV_INVALID)
 		env = (const char *)default_environment;
 	else