Subject: | is_active() on closed IO::Pty::Easy causes vec(,undef,) |
DESTROY calls ->close,
which calls ->kill,
which calls ->is_active.
In this case, if the pty has already been ->close()'d, fileno($self) may
be undef.
vec($x,undef,$x) causes an error:
Use of uninitialized value in vec at
/usr/local/lib/perl5/site_perl/5.8.9/IO/Pty/Easy.pm line 270 during
global destruction.
The attached patch fixes the problem. Please release a new version.
Subject: | easy.patch |
--- Easy.pm.orig 2009-10-09 21:43:37.000000000 +0000
+++ Easy.pm 2009-10-09 21:43:03.000000000 +0000
@@ -263,6 +263,7 @@
my $self = shift;
return 0 unless defined $self->pid;
+ return 0 unless defined fileno($self);
# XXX FreeBSD 7.0 will not allow a session leader to exit until the kernel
# tty output buffer is empty. Make it so.
my $rin = '';