From 04325f49c4b964ed22f203cb950d677ad7d41fed Mon Sep 17 00:00:00 2001 From: Alexei Barantsev Date: Sat, 21 Mar 2020 00:57:38 +0300 Subject: [PATCH] [build] More robust way to enforce UTF-8 output encoding from an external process --- rake_tasks/bazel.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rake_tasks/bazel.rb b/rake_tasks/bazel.rb index d3c0b10a8511a..20f06abb2880a 100644 --- a/rake_tasks/bazel.rb +++ b/rake_tasks/bazel.rb @@ -15,7 +15,7 @@ def self.execute(kind, args, target, &block) if SeleniumRake::Checks.windows? cmd = cmd + ["2>&1"] cmd_line = cmd.join(' ') - cmd_out = `#{cmd_line}`.force_encoding("UTF-8") + cmd_out = `#{cmd_line}`.encode('UTF-8', 'binary', invalid: :replace, undef: :replace, replace: '') cmd_exit_code = $?.success? else Open3.popen2e(*cmd) do |stdin, stdouts, wait|