Guido van Rossum added the comment: > > I don't understand. When does the difference matter? > > When the check for fd < 0 is removed from fileio_init() there is no way > to tell if fd < 0 means fd closed or invalid fd.
I still don't understand. Why do you need to treat a closed fd different from an invalid fd. In both cases you can't use it and you shouldn't close it. > In order to fix the problem with GUI apps on Windows the check for fd < > 0 has to be removed (Python 2.x way). Or we use Amaury's way and open > NUL for reading and writing as a substitute for the standard streams. I'd suggest that, on Windows, sys.std{in,out.err} should be set to None instead of a file object when their file descriptor is invalid. That way print and write requests will fail immediately instead of nondeterministically. With an invalid file that only blows upwhen trying to flush you may be able to write a small traceback but it will still blow up if the traceback is big. Is there a downside to print/write blowing up right away in apps using pythonw? __________________________________ Tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue1415> __________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com