set quietly on Windows

This commit is contained in:
Aoran Zeng
2025-06-19 14:27:57 +08:00
parent 7d0923e9de
commit ca00e0233b

View File

@@ -1149,12 +1149,12 @@ chsrc_view_env (const char *var1, ...)
#else
if (first)
{
cmd = xy_strjoin (3, "echo $", var, " ");
cmd = xy_strjoin (5, "echo ", var, "=$", var, " ");
first = false;
}
else
{
cmd = xy_strjoin (4, cmd, "; echo $", var, " ");
cmd = xy_strjoin (6, cmd, "; echo ", var, "=$", var, " ");
}
#endif
var = va_arg (vars, const char *);
@@ -1164,7 +1164,13 @@ chsrc_view_env (const char *var1, ...)
if (var1)
{
chsrc_run (cmd, RunOpt_Dont_Notify_On_Success|RunOpt_No_Last_New_Line);
/**
* 不用 chsrc_run()因为在Windows上set在遇到环境变量未定义时会返回非0导致 chsrc_run() 报告运行失败
* 这个错误过于醒目。我们应该像在 sh 一样,默默地没有输出即可,而不是报错
*/
// chsrc_run (cmd, RunOpt_Dont_Notify_On_Success|RunOpt_No_Last_New_Line|RunOpt_Dont_Abort_On_Failure);
int status = system (cmd);
if (status!=0) {/* NOOP */}
}
else
{