diff options
-rw-r--r-- | distbuild/initiator.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/distbuild/initiator.py b/distbuild/initiator.py index 56820fc2..89cd63fd 100644 --- a/distbuild/initiator.py +++ b/distbuild/initiator.py @@ -196,7 +196,7 @@ class Initiator(distbuild.StateMachine): path = self._get_step_output_dir() filename = os.path.join(path, 'build-step-%s.log' % msg['step_name']) - f = codecs.open(filename, 'a', encoding='utf-8') + f = open(filename, 'a') self._step_outputs[msg['step_name']] = f def _close_output(self, msg): @@ -230,8 +230,15 @@ class Initiator(distbuild.StateMachine): step_name = msg['step_name'] if step_name in self._step_outputs: f = self._get_output(msg) - f.write(msg['stdout'].decode('unicode-escape')) - f.write(msg['stderr'].decode('unicode-escape')) + if isinstance(msg['stdout'], unicode): + f.write(msg['stdout'].encode('utf-8')) + else: + f.write(msg['stdout']) + + if isinstance(msg['stderr'], unicode): + f.write(msg['stderr'].encode('utf-8')) + else: + f.write(msg['stderr']) f.flush() else: logging.warning( |