When running popen with a separate stdout/stderr, can I use read() on the resulting stdout file? it seems to 'hang', and I'm assuming stderr's buffer is stuck on write (as it is all filled up), and my stdout read() is stuck on waiting for EOF, which will never come. Deadlock. Is this really what's happening and how can it be avoided?