Martin Panter added the comment: I guess you were mainly testing with Python 2. Python 3 on Linux does not raise any error either:
wrote 3 to a read-only file should raise, opening a ro descriptor for writing aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa BTW in your test script you close the underlying file descriptor “fd” before giving the file object “fd2” a chance to flush or close, which is probably why you see no error. Though in Wine I see this, probably because file.write() does not return a value in Python 2: properly raised TypeError('%d format: a number is required, not NoneType',) What would be the reason for doing a mode check in fdopen()? Just to detect programmer errors if the wrong mode or file descriptor is given? ---------- components: +IO nosy: +vadmium _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue23634> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com