From d326bebf919a84e1b130efb517deb7d0848603e3 Mon Sep 17 00:00:00 2001 From: Mark Simulacrum Date: Mon, 9 Apr 2018 11:39:18 -0600 Subject: [PATCH] Stop emitting color codes on TERM=dumb These terminals generally don't support color. Fixes #49191 --- src/bootstrap/compile.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs index 9cc18464fea09..b411b19bd53d2 100644 --- a/src/bootstrap/compile.rs +++ b/src/bootstrap/compile.rs @@ -1167,7 +1167,9 @@ pub fn stream_cargo( cargo.arg("--message-format").arg("json") .stdout(Stdio::piped()); - if stderr_isatty() && build.ci_env == CiEnv::None { + if stderr_isatty() && build.ci_env == CiEnv::None && + // if the terminal is reported as dumb, then we don't want to enable color for rustc + env::var_os("TERM").map(|t| t != *"dumb").unwrap_or(true) { // since we pass message-format=json to cargo, we need to tell the rustc // wrapper to give us colored output if necessary. This is because we // only want Cargo's JSON output, not rustcs.