This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author tzickel
Recipients gregory.p.smith, tzickel
Date 2015-09-14.10:49:35
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1442227776.0.0.672391675414.issue25083@psf.upfronthosting.co.za>
In-reply-to
Content
You are not looking at the correct code, the function you are pointing to, check_compiled_module is run to check the existing .pyc (it is a good question, why the .pyc is overriden, but that is a secondary issue, which I cannot reproduce as I've said by demand).

I am talking about the code which creates a new (and incorrect) .pyc in parse_source_module:
https://hg.python.org/cpython/file/2.7/Python/import.c#l861
calls in the end to Py_UniversalNewlineFgets
https://hg.python.org/cpython/file/2.7/Objects/fileobject.c#l2749
you can see that function will return NULL if it gets an EOF because of a file error, and then the tokenises which calls it will not know if it got NULL because of EOF or file error, and compile the AST and generate an incorrect .pyc file.
History
Date User Action Args
2015-09-14 10:49:36tzickelsetrecipients: + tzickel, gregory.p.smith
2015-09-14 10:49:36tzickelsetmessageid: <1442227776.0.0.672391675414.issue25083@psf.upfronthosting.co.za>
2015-09-14 10:49:35tzickellinkissue25083 messages
2015-09-14 10:49:35tzickelcreate