blib/lib/IO/SigGuard/syswrite.pm | |||
---|---|---|---|
Criterion | Covered | Total | % |
statement | 3 | 3 | 100.0 |
branch | n/a | ||
condition | 1 | 3 | 33.3 |
subroutine | 1 | 1 | 100.0 |
pod | 0 | 1 | 0.0 |
total | 5 | 8 | 62.5 |
line | stmt | bran | cond | sub | pod | time | code |
---|---|---|---|---|---|---|---|
1 | package IO::SigGuard; | ||||||
2 | |||||||
3 | sub syswrite { | ||||||
4 | WRITE: { | ||||||
5 | 641569 | 33 | 641569 | 0 | 2352664 | $result = ( (@_ == 2) ? CORE::syswrite( $_[0], $_[1] ) : (@_ == 3) ? CORE::syswrite( $_[0], $_[1], $_[2] ) : (@_ == 4) ? CORE::syswrite( $_[0], $_[1], $_[2], $_[3] ) : die "Wrong args count! syswrite(@_)" ) || do { | |
641569 | 3816777 | ||||||
6 | |||||||
7 | #EINTR means the file pointer is unchanged. | ||||||
8 | redo WRITE if $! == Errno::EINTR(); | ||||||
9 | }; | ||||||
10 | } | ||||||
11 | |||||||
12 | 641569 | 1391923 | return $result; | ||||
13 | } | ||||||
14 | |||||||
15 | 1; |