Martin v. Löwis added the comment: To me, this still looks like an OS bug. The difference between 2.7 and 3.2 seems to be that 3.2 will call the _nocancel syscalls, which I guess results from using a different version of the C library, or OSX deployment target, or something. However, the system calls are almost identical, see
http://fxr.watson.org/fxr/source/bsd/kern/sys_generic.c?v=xnu-1699.24.8#L448 (i.e. the "cancel" version calls __pthread_testcancel, which may result in EINTR, but not in this trace). So ISTM that in the failing case, the child successfully writes to the file descriptor (7 bytes written), yet the parent reads only 0 bytes out of the pty, which makes it look like the kernel discards the data. The trace isn't exactly from the script you provided, right? Because the script sends the string "testing123", whereas the trace shows "testing". ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue15898> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com