From c5cbbe35fd7b3d05273f4d3f273c9e613bd38d7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Beh=C3=BAn?= Date: Fri, 22 Oct 2021 15:47:24 +0200 Subject: env: Always use char for default_environment MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sometimes we use uchar and sometimes char for the default environment array. By always using char, we can get rid of some explicit casts. Signed-off-by: Marek BehĂșn Reviewed-by: Simon Glass --- env/common.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'env/common.c') diff --git a/env/common.c b/env/common.c index db213b77483..664d2e688ed 100644 --- a/env/common.c +++ b/env/common.c @@ -162,7 +162,7 @@ int env_get_f(const char *name, char *buf, unsigned len) name_len = strlen(name); if (gd->env_valid == ENV_INVALID) - env = (const char *)default_environment; + env = default_environment; else env = (const char *)gd->env_addr; @@ -264,7 +264,7 @@ void env_set_default(const char *s, int flags) } flags |= H_DEFAULT; - if (himport_r(&env_htab, (char *)default_environment, + if (himport_r(&env_htab, default_environment, sizeof(default_environment), '\0', flags, 0, 0, NULL) == 0) pr_err("## Error: Environment import failed: errno = %d\n", @@ -283,7 +283,7 @@ int env_set_default_vars(int nvars, char * const vars[], int flags) * (and use \0 as a separator) */ flags |= H_NOCLEAR | H_DEFAULT; - return himport_r(&env_htab, (const char *)default_environment, + return himport_r(&env_htab, default_environment, sizeof(default_environment), '\0', flags, 0, nvars, vars); } -- cgit v1.2.3 From 37f3758a250d4c590ffac671f100d9b5ec73b417 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Beh=C3=BAn?= Date: Fri, 22 Oct 2021 15:47:25 +0200 Subject: env: Use static_assert() to check if default_environment is too large MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Check sizeof(default_environment) against ENV_SIZE in a static_assert() instead of runtime. Only check if !USE_HOSTCC (for in fw_env tool ENV_SIZE expands to a variable, and cannot be checked statically) nad !DEFAULT_ENV_INSTANCE_EMBEDDED, for in that case the default_environment variable is not set. Signed-off-by: Marek BehĂșn Reviewed-by: Simon Glass --- env/common.c | 5 ----- 1 file changed, 5 deletions(-) (limited to 'env/common.c') diff --git a/env/common.c b/env/common.c index 664d2e688ed..99729ca002c 100644 --- a/env/common.c +++ b/env/common.c @@ -247,11 +247,6 @@ char *env_get_default(const char *name) void env_set_default(const char *s, int flags) { - if (sizeof(default_environment) > ENV_SIZE) { - puts("*** Error - default environment is too large\n\n"); - return; - } - if (s) { if ((flags & H_INTERACTIVE) == 0) { printf("*** Warning - %s, " -- cgit v1.2.3