Skip Menu |

This queue is for tickets about the POE CPAN distribution.

Report information
The Basics
Id: 3763
Status: resolved
Priority: 0/
Queue: POE

People
Owner: Nobody in particular
Requestors: matt [...] trout.me.uk
Cc:
AdminCc:

Bug Information
Severity: Wishlist
Broken in: (no value)
Fixed in: (no value)



Subject: Feature - optionally don't setsid after fork in POE::Wheel::Run
I don't always want the processes a POE::Wheel::Run instance is interacting with to have their own process group; since setsid() is useful in most cases I've left it as the default but provided a 'NoSetSid' option to the constructor with prevents it doing so; the patch is attached.
*** /usr/local/lib/perl5/site_perl/5.8.0/POE/Wheel/Run.pm Thu Apr 3 05:01:56 2003 --- Run.pm Wed Sep 10 15:26:01 2003 *************** *** 189,194 **** --- 189,196 ---- my $error_event = delete $params{ErrorEvent}; my $close_event = delete $params{CloseEvent}; + my $no_setsid = delete $params{NoSetSid}; + # Make sure the user didn't pass in parameters we're not aware of. if (scalar keys %params) { carp( "unknown parameters in $type constructor call: ", *************** *** 249,255 **** # Become a new unix session. # Program 19.3, APITUE. W. Richard Stevens built my hot rod. ! eval 'setsid()'; # Open the slave side of the pty. $stdin_read = $stdout_write = $stderr_write = $stdin_write->slave(); --- 251,257 ---- # Become a new unix session. # Program 19.3, APITUE. W. Richard Stevens built my hot rod. ! eval 'setsid()' unless $no_setsid; # Open the slave side of the pty. $stdin_read = $stdout_write = $stderr_write = $stdin_write->slave();
I have finally applied your patch. It will appear in the next release. Thanks!