--- AnyEvent/lib/AnyEvent.pm 2008/05/25 23:52:02 1.136 +++ AnyEvent/lib/AnyEvent.pm 2008/05/26 06:18:53 1.140 @@ -733,7 +733,7 @@ use Carp; -our $VERSION = '4.03'; +our $VERSION = '4.04'; our $MODEL; our $AUTOLOAD; @@ -741,6 +741,13 @@ our @REGISTRY; +our $WIN32; + +BEGIN { + my $win32 = ! ! ($^O =~ /mswin32/i); + eval "sub WIN32(){ $win32 }"; +} + our $verbose = $ENV{PERL_ANYEVENT_VERBOSE}*1; our %PROTOCOL; # (ipv4|ipv6) => (1|2), higher numbers are preferred @@ -795,6 +802,7 @@ sub detect() { unless ($MODEL) { no strict 'refs'; + local $SIG{__DIE__}; if ($ENV{PERL_ANYEVENT_MODEL} =~ /^([a-zA-Z]+)$/) { my $model = "AnyEvent::Impl::$1"; @@ -927,7 +935,7 @@ $PID_CB{$pid}{$arg{cb}} = $arg{cb}; unless ($WNOHANG) { - $WNOHANG = eval { require POSIX; &POSIX::WNOHANG } || 1; + $WNOHANG = eval { local $SIG{__DIE__}; require POSIX; &POSIX::WNOHANG } || 1; } unless ($CHLD_W) {