From fdee8a23b333d564073326fcbfa47832dac70c61 Mon Sep 17 00:00:00 2001 From: philwalk Date: Tue, 13 May 2025 13:41:18 -0600 Subject: [PATCH 1/2] fix for #3481, only applied in Windows --- modules/cli/src/main/scala/scala/cli/ScalaCli.scala | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/cli/src/main/scala/scala/cli/ScalaCli.scala b/modules/cli/src/main/scala/scala/cli/ScalaCli.scala index 8f4b853380..6228673cf6 100644 --- a/modules/cli/src/main/scala/scala/cli/ScalaCli.scala +++ b/modules/cli/src/main/scala/scala/cli/ScalaCli.scala @@ -314,7 +314,13 @@ object ScalaCli { if (Properties.isWin && System.console() != null && coursier.paths.Util.useJni()) // Enable ANSI output in Windows terminal - coursier.jniutils.WindowsAnsiTerminal.enableAnsiOutput() + try + coursier.jniutils.WindowsAnsiTerminal.enableAnsiOutput() + catch { + // ignore error resulting from redirect STDOUT to /dev/null + case e: java.io.IOException + if Properties.isWin && e.getMessage.contains("GetConsoleMode error 6") => + } new ScalaCliCommands(progName, baseRunnerName, fullRunnerName) .main(scalaCliArgs) From b0714d6f34b2e2b1337d2f169f7a30724f243290 Mon Sep 17 00:00:00 2001 From: philwalk Date: Sat, 17 May 2025 10:47:06 -0600 Subject: [PATCH 2/2] Update modules/cli/src/main/scala/scala/cli/ScalaCli.scala remove redundant `isWin` check Co-authored-by: Piotr Chabelski --- modules/cli/src/main/scala/scala/cli/ScalaCli.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/cli/src/main/scala/scala/cli/ScalaCli.scala b/modules/cli/src/main/scala/scala/cli/ScalaCli.scala index 6228673cf6..8c5a99c685 100644 --- a/modules/cli/src/main/scala/scala/cli/ScalaCli.scala +++ b/modules/cli/src/main/scala/scala/cli/ScalaCli.scala @@ -319,7 +319,7 @@ object ScalaCli { catch { // ignore error resulting from redirect STDOUT to /dev/null case e: java.io.IOException - if Properties.isWin && e.getMessage.contains("GetConsoleMode error 6") => + if e.getMessage.contains("GetConsoleMode error 6") => } new ScalaCliCommands(progName, baseRunnerName, fullRunnerName)