File Coverage

blib/lib/IO/SigGuard/syswrite.pm
Criterion Covered Total %
statement 3 3 100.0
branch 2 8 25.0
condition 2 3 66.6
subroutine 1 1 100.0
pod 0 1 0.0
total 8 16 50.0


line stmt bran cond sub pod time code
1             package IO::SigGuard;
2              
3             sub syswrite {
4 506088 0   506088 0 4631806 $result = ( (@_ == 2) ? CORE::syswrite( $_[0], $_[1] ) : (@_ == 3) ? CORE::syswrite( $_[0], $_[1], $_[2] ) : (@_ == 4) ? CORE::syswrite( $_[0], $_[1], $_[2], $_[3] ) : die "Wrong args count! syswrite(@_)" );
    0          
    50          
5              
6             #EINTR means the file pointer is unchanged.
7 506088 50 66     1433913 goto &syswrite if !defined $result && $! == Errno::EINTR();
8              
9 506088         969571 return $result;
10             }
11              
12             1;