Rocco Caputo <[EMAIL PROTECTED]> writes:
> I was not able to verify the segfault on FreeBSD, in perl 5.6.1 or 5.8.2
> (single or multithreaded). They all die quite normally.
I was able to reproduce the problem on FreeBSD:
FreeBSD conan.int.sifira.dk 4.8-RELEASE-p13 FreeBSD 4.8-RELEASE-p13 #0: Wed Oct 8
11:54:20 CEST 2003 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/CONAN i386
This was with Perl 5.8.3 and POE 0.27. I would expect the problem to
depend somewhat on the version of POE.
I cut down the test script somewhat more, eliminating the socket part:
use strict;
use warnings;
use POE;
sub foo {
my $self = [ 'mystate' ];
my $state = \$self->[0];
$poe_kernel->state
( 'mystate',
sub {
my ($k) = $_[KERNEL];
$poe_kernel->state($$state);
die "HERE";
}
);
$poe_kernel->yield('mystate');
$_[HEAP]->{server} = $self;
}
POE::Session->create( inline_states => { _start => \&foo} );
POE::Kernel::_data_ev_dispatch_due($poe_kernel);
exit 0;
> Perl5-porters is likely to brush the problem off without confirmation of
> a wider problem.
Yes. I've been trying to make a stand-alone reproduction that does not
use POE::Kernel, but that has proven somewhat tricky.
Anyway, this is quickly moving out of POE territory and into
Perl-complex-mix-of-closures-and-references territory.
- Kristian.