Message 77891 - Python tracker
I think communicate() works as documented now: reads stdout/stderr until EOF, *and* waits for subprocess to terminate. You're asking for a different method, or perhaps an optional parameter "return_when_died" to communicate, so it returns as soon as the child process terminates (I don't like the parameter name...) I think this is more a feature request than a crash, targeted to 2.7/3.1 - 2.4 only gets security fixes anyway.