• Kristján Valur Jónsson's avatar
    Fix an issue in the tokenizer, where a file is opened by fd, but the underlying… · 19288c24
    Kristján Valur Jónsson yazdı
    Fix an issue in the tokenizer, where a file is opened by fd, but the underlying PyFileIO object wasn created with the closefd attribute true.
    Also fix error handling for close() int _fileio.c .  It was incorrect, looking for a negative refcount, and so errors weren't raised.  This is why this issue wasn't caught.
    There is a second reason why it isn't seen:  Class IOBase in io.py has a try:/except: around the close() funtion in the __del__() method.  This also masks these error conditions.
    
    This issue was discovered by removing the _set_invalid_parameter_handler() fiddling, thus enabling the C runtime checks on windows.
    19288c24
tokenizer.c 35.3 KB