Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options

Re: How to preserve the value of STDIN

by Fastolfe (Vicar)
on Sep 22, 2000 at 03:08 UTC ( #33585=note: print w/ replies, xml ) Need Help??

in reply to How to preserve the value of STDIN

Note that this would still destroy STDIN, but at least you have the data available to the two parts of your application that need it. They just need to be re-written to use <$A> and/or <$B> instead of <STDIN>.

You could actually even do without the 2nd variable:

my $A = new IO::String ($data); &exhaust_file_handle($A); # read everything from $A $A->setpos(0); # rewind &also_exhaust($A); # 2nd process reads everything from $A
Since $A isn't a native file handle, you can't seek() on it, but this will do just as well and should be indistinguishable from your two separate processes.

You will also need to do this in a BEGIN { } block, so that all of this mangling of STDIN is done before use CGI ($A) is called.

Comment on Re: How to preserve the value of STDIN
Select or Download Code

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://33585]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (9)
As of 2014-09-18 09:30 GMT
Find Nodes?
    Voting Booth?

    How do you remember the number of days in each month?

    Results (109 votes), past polls