--- AnyEvent/lib/AnyEvent.pm 2009/07/28 12:56:17 1.261 +++ AnyEvent/lib/AnyEvent.pm 2009/07/28 13:08:17 1.262 @@ -1339,16 +1339,12 @@ $signal = Async::Interrupt::sig2num ($signal); $SIG_CB{$signal}{$arg{cb}} = $arg{cb}; - $SIG_ASY{$signal} ||= do { - my $asy = new Async::Interrupt - cb => sub { undef $SIG_EV{$signal} }, - signal => $signal, - pipe => [$SIGPIPE_R->filenos], - ; - $asy->pipe_autodrain (0); - - $asy - }; + $SIG_ASY{$signal} ||= new Async::Interrupt + cb => sub { undef $SIG_EV{$signal} }, + signal => $signal, + pipe => [$SIGPIPE_R->filenos], + pipe_autodrain => 0, + ; } else { # pure perl