Based on a Stack Overflow thread, I think the child process's end of the pipes need to be manually closed when the process ends, in order for the parent's ends to register EOF events. Otherwise, they just hang waiting for more output that can never arrive (as shown in the tests I added).
I think my fix here is correct, but I've only tested on Windows.
Based on a Stack Overflow thread, I think the child process's end of the pipes need to be manually closed when the process ends, in order for the parent's ends to register EOF events. Otherwise, they just hang waiting for more output that can never arrive (as shown in the tests I added).
I think my fix here is correct, but I've only tested on Windows.