diff mbox series

env: Fix invalid env handling in env_init()

Message ID 20200529175115.627228-1-marex@denx.de
State Superseded
Delegated to: Tom Rini
Headers show
Series env: Fix invalid env handling in env_init() | expand

Commit Message

Marek Vasut May 29, 2020, 5:51 p.m. UTC
In case the env storage driver marks environment as ENV_INVALID, we must
reset the $ret return value to -ENOENT to let the env init code reset the
environment to the default one a bit further down.

Signed-off-by: Marek Vasut <marex@denx.de>
 env/env.c | 3 +++
 1 file changed, 3 insertions(+)
diff mbox series


diff --git a/env/env.c b/env/env.c
index dcc25c030b..024d36fdbe 100644
--- a/env/env.c
+++ b/env/env.c
@@ -300,6 +300,9 @@  int env_init(void)
 		debug("%s: Environment %s init done (ret=%d)\n", __func__,
 		      drv->name, ret);
+		if (gd->env_valid == ENV_INVALID)
+			ret = -ENOENT;
 	if (!prio)