On 23/08/2011 04:17, Bryan R Harris wrote:


"Bryan" == Bryan R Harris<bryan_r_har...@raytheon.com>  writes:

Bryan>  How can I use the "safe" 3-argument open and still be able to read off
a
Bryan>  pipe?

You don't.  2-arg open has to be good for something.

And 2-arg open is perfectly safe if the second arg is a literal:

   open OTHER, "<-" or die;
   open my $handle, "<-" or die;

Don't let anyone tell you "Always use 3-arg open" unless they also
footnote it with "unless you have no variables involved".


Hmm.  With this tool if there's a pipe and no user-supplied files, I just
put "-" onto the list of files to search -- using the 2-arg open.  Someone
suggested that was a bad idea, so I switched to the 3-arg open but that
broke reading off the pipe.

So is it right that in order to read off the pipe *and* be safe, I have to
have both types of "open" statements in my code?

If your file names aren't hard-coded into the program then yes.

This same question received five replies on 18 August. Did you read
them?

Rob

--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to