From: Florian Eder Subject: [PATCH v3] cmd: Do not change errorlevel when setting environment variables Message-Id: <20210601070254.58502-1-others.meder@gmail.com> Date: Tue, 1 Jun 2021 07:02:54 +0000 Changes CMD to set its errorlevel to 0 only when the value of an environment variable is set in in non-interactive / batch mode, retains the previous value otherwise. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47791 Signed-off-by: Florian Eder --- v3: Conditional setting of errorlevel instead of a premature return statement, explanatory paragraphs reformated to conform with the style described in the Wiki --- programs/cmd/builtins.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/programs/cmd/builtins.c b/programs/cmd/builtins.c index 502694ffc46..c7df724ae00 100644 --- a/programs/cmd/builtins.c +++ b/programs/cmd/builtins.c @@ -4218,7 +4218,7 @@ void WCMD_setshow_env (WCHAR *s) { if ((!status) & (gle == ERROR_ENVVAR_NOT_FOUND)) { errorlevel = 1; } else if (!status) WCMD_print_error(); - else errorlevel = 0; + else if (!interactive) errorlevel = 0; } } -- 2.31.1