diff options
author | William Deegan <bill@baddogconsulting.com> | 2017-04-04 15:50:54 (GMT) |
---|---|---|
committer | William Deegan <bill@baddogconsulting.com> | 2017-04-04 15:50:54 (GMT) |
commit | 3cc6d46aee79de51fe5017251a126725c72ceba5 (patch) | |
tree | 318f9d9a1a80f1df33c13695df5731451d8143f2 | |
parent | 35f1025ddee1d8017a35a7dcfcc7bd69620c0b25 (diff) | |
download | SCons-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.py | 12 |
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 |