in reply to Re: Problem with passing my script's STDIN to child
in thread Problem with passing my script's STDIN to child

That's because $| affects only the currently select()ed output filehandle. IO::Pipe appears to subclass IO::Handle so you can just change
$pipe->writer();
to
$pipe->writer(); $pipe->autoflush();