Fix #3941

This is the immediate julia-level fix. It's actually amazing that this worked so long. Unfortunately
this doesn't fix the underlying issue in libuv having to do with reading from non-asynchronous pipe. I need to see if I can up with a new julia-level test case.