gclient: Make smoketests run on Windows.
Bug: 1024683
Change-Id: I1c30473699c1bd6b198188b53b632e3617fed335
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1929653
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
diff --git a/fix_encoding.py b/fix_encoding.py
index fb4214c..b327a49 100644
--- a/fix_encoding.py
+++ b/fix_encoding.py
@@ -84,6 +84,10 @@
if _SYS_ARGV_PROCESSED:
return False
+ if sys.version_info.major == 3:
+ _SYS_ARGV_PROCESSED = True
+ return True
+
# These types are available on linux but not Mac.
# pylint: disable=no-name-in-module,F0401
from ctypes import byref, c_int, POINTER, windll, WINFUNCTYPE
@@ -269,6 +273,9 @@
if sys.version_info.major == 2 and isinstance(text, unicode):
# Replace characters that cannot be printed instead of failing.
text = text.encode(self.encoding, 'replace')
+ if sys.version_info.major == 3 and isinstance(text, bytes):
+ # Replace characters that cannot be printed instead of failing.
+ text = text.decode(self.encoding, 'replace')
self._stream.write(text)
except Exception as e:
complain('%s.write: %r' % (self.name, e))