py3: Fix encoding and use sys.stdin.buffer

* exc.py: Encode body in response before calling replace over it.
* http.py: prepend the bytes literal to the empty string or else
  we hit bug 1342080 again in python 3.
* utils.py: Use sys.stdin.buffer in python 3.

Change-Id: Ieefb8c633658e507486438e5518c5d53e819027d
This commit is contained in:
Sirushti Murugesan
2016-06-23 19:08:51 +05:30
parent a0d1cc974e
commit 376037d371
6 changed files with 28 additions and 5 deletions
+4
View File
@@ -16,6 +16,8 @@
import re
import sys
import six
class BaseException(Exception):
"""An error occurred."""
@@ -177,6 +179,8 @@ def from_response(response, body=None):
details = ': '.join(details_temp)
return cls(details=details)
elif body:
if six.PY3:
body = body.decode('utf-8')
details = body.replace('\n\n', '\n')
return cls(details=details)