diff options
author | tzickel <tzickel@users.noreply.github.com> | 2018-09-10 18:46:14 (GMT) |
---|---|---|
committer | Petr Viktorin <encukou@gmail.com> | 2018-09-10 18:46:14 (GMT) |
commit | f64c813de84011a84ca21d75a294861a9cc2dfdc (patch) | |
tree | 80cecd0ba567158bcb642a1283a28189f18b5713 /Python/pythonrun.c | |
parent | ed62e645101fdd83aee519f6f33a4384ff79f105 (diff) | |
download | cpython-f64c813de84011a84ca21d75a294861a9cc2dfdc.zip cpython-f64c813de84011a84ca21d75a294861a9cc2dfdc.tar.gz cpython-f64c813de84011a84ca21d75a294861a9cc2dfdc.tar.bz2 |
bpo-25083: Python can sometimes create incorrect .pyc files (GH-8449)
Python 2 never checked for I/O error when reading .py files and
thus could mistake an I/O error for EOF and create incorrect .pyc
files.
This adds an check for this and aborts on an error.
Diffstat (limited to 'Python/pythonrun.c')
-rw-r--r-- | Python/pythonrun.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Python/pythonrun.c b/Python/pythonrun.c index 5707c9f..2c9f55f 100644 --- a/Python/pythonrun.c +++ b/Python/pythonrun.c @@ -1654,6 +1654,9 @@ err_input(perrdetail *err) Py_XDECREF(tb); break; } + case E_IO: + msg = "I/O error while reading"; + break; case E_LINECONT: msg = "unexpected character after line continuation character"; break; |