Because JRuby may share a process with other applications, our reopen is simulated; we do not actually modify stdout (or stderr, or any open IO stream) when you reopen it. The target object just swaps "descriptors" with the given object. I'm not sure this is something we can make work without large changes and damaging all other users of stdio on the same JVM.
This code works properly on MRI
At the end we will see the output of subprocess. We don't need write end of pipe in our process so we can freely close it. But for jruby the output is an empty string.
The text was updated successfully, but these errors were encountered: