summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilliam Deegan <bill@baddogconsulting.com>2017-04-04 15:50:54 (GMT)
committerWilliam Deegan <bill@baddogconsulting.com>2017-04-04 15:50:54 (GMT)
commit3cc6d46aee79de51fe5017251a126725c72ceba5 (patch)
tree318f9d9a1a80f1df33c13695df5731451d8143f2
parent35f1025ddee1d8017a35a7dcfcc7bd69620c0b25 (diff)
downloadSCons-3cc6d46aee79de51fe5017251a126725c72ceba5.zip
SCons-3cc6d46aee79de51fe5017251a126725c72ceba5.tar.gz
SCons-3cc6d46aee79de51fe5017251a126725c72ceba5.tar.bz2
py2/3 ensure strings sent to process are bytes on win32. This fixes most fo the Interactive tests
-rw-r--r--QMTest/TestCmd.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/QMTest/TestCmd.py b/QMTest/TestCmd.py
index d9f59c0..2c0c0d3 100644
--- a/QMTest/TestCmd.py
+++ b/QMTest/TestCmd.py
@@ -736,8 +736,20 @@ class Popen(subprocess.Popen):
getattr(self, which).close()
setattr(self, which, None)
+
+ def to_bytes (s):
+ if isinstance (s, bytes) or bytes is str:
+ return s
+ return bytes (s, 'utf-8')
+
+ def to_str (s):
+ if bytes is str or is_String(s):
+ return s
+ return str (s, 'utf-8')
+
if sys.platform == 'win32':# and subprocess.mswindows:
def send(self, input):
+ input = to_bytes(input)
if not self.stdin:
return None