diff options
author | Arfrever Frehtes Taifersar Arahesis <Arfrever.FTA@GMail.Com> | 2015-03-30 04:26:56 +0200 |
---|---|---|
committer | Arfrever Frehtes Taifersar Arahesis <Arfrever.FTA@GMail.Com> | 2015-03-30 04:26:56 +0200 |
commit | 8fe7605a2787648a23c28741e20ba403e95a357b (patch) | |
tree | 720e14bd34f087ad89d03f81381b857d07492fae /setuptools/sandbox.py | |
parent | 933e26cd75231ba6402c38e4044e001a5d47fa3f (diff) | |
download | external_python_setuptools-8fe7605a2787648a23c28741e20ba403e95a357b.tar.gz external_python_setuptools-8fe7605a2787648a23c28741e20ba403e95a357b.tar.bz2 external_python_setuptools-8fe7605a2787648a23c28741e20ba403e95a357b.zip |
Fix setuptools.sandbox._execfile() with Python 3.1.
It fixes failure of setuptools.tests.test_sandbox.TestSandbox.test_setup_py_with_CRLF() with Python 3.1.
Diffstat (limited to 'setuptools/sandbox.py')
-rwxr-xr-x | setuptools/sandbox.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/setuptools/sandbox.py b/setuptools/sandbox.py index 67255123..31e3eb2d 100755 --- a/setuptools/sandbox.py +++ b/setuptools/sandbox.py @@ -34,12 +34,12 @@ def _execfile(filename, globals, locals=None): Python 3 implementation of execfile. """ mode = 'rb' - # Python 2.6 compile requires LF for newlines, so use deprecated - # Universal newlines support. - if sys.version_info < (2, 7): - mode += 'U' with open(filename, mode) as stream: script = stream.read() + # compile() function in Python 2.6 and 3.1 requires LF line endings. + if sys.version_info[:2] < (2, 7) or sys.version_info[:2] >= (3, 0) and sys.version_info[:2] < (3, 2): + script = script.replace(b'\r\n', b'\n') + script = script.replace(b'\r', b'\n') if locals is None: locals = globals code = compile(script, filename, 'exec') |