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 598533 0   598533 0 5226990 $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 598533 50 66     1654584 goto &syswrite if !defined $result && $! == Errno::EINTR();
8              
9 598533         1078508 return $result;
10             }
11              
12             1;