| line |
true |
false |
branch |
|
19
|
6 |
0 |
!(@_ & 1) ? : |
|
|
0 |
6 |
@_ == 1 && &isa_hash($_[0]) ? : |
|
23
|
0 |
6 |
unless defined $attrs{'dst'} |
|
24
|
0 |
6 |
unless my $dst_abs = abs_path($attrs{'dst'} =~ s[(?<=[^/])$][/]ru) |
|
26
|
0 |
6 |
unless length $dst_abs > 1 |
|
36
|
0 |
6 |
if $tmp_dev != $dst_dev |
|
51
|
0 |
0 |
if @_ > 1 |
|
62
|
0 |
0 |
ref $val eq 'CODE' ? : |
|
72
|
2 |
4 |
if $self->{'_delayed_apply_stat'} |
|
78
|
0 |
21 |
if $file->{'name'} =~ m[(^|^\.|^\.\.)(/|\z)]u |
|
83
|
0 |
21 |
if (@old{"dev", "ino", "mode", "nlink", "uid", "gid", "rdev", "size", "atime", "mtime"} = lstat $dst_abs) |
|
86
|
0 |
0 |
if $action eq "ignore" |
|
87
|
0 |
0 |
if (defined(my $difference = $self->_compare_dirent($file, \%old))) |
|
89
|
0 |
0 |
if ref $action eq "CODE" |
|
94
|
0 |
0 |
if $action eq "ignore" |
|
95
|
0 |
0 |
unless $action eq "overwrite" |
|
97
|
0 |
0 |
unless S_ISDIR($old{'mode'}) |
|
107
|
0 |
8 |
defined $old{'mode'} ? : |
|
|
0 |
0 |
S_ISWHT($mode) ? : |
|
|
1 |
0 |
S_ISSOCK($mode) ? : |
|
|
0 |
1 |
S_ISFIFO($mode) ? : |
|
|
1 |
1 |
S_ISBLK($mode) || S_ISCHR($mode) ? : |
|
|
5 |
2 |
S_ISLNK($mode) ? : |
|
|
8 |
7 |
S_ISDIR($mode) ? : |
|
|
6 |
15 |
S_ISREG($mode) ? : |
|
128
|
0 |
0 |
if ($file->{'mode'} & S_IFMT()) != ($old->{'mode'} & S_IFMT()) |
|
130
|
0 |
0 |
if defined $file->{'uid'} and $file->{'uid'} != $old->{'uid'} or defined $file->{'gid'} and $file->{'gid'} != $old->{'gid'} |
|
132
|
0 |
0 |
if (S_ISLNK($file->{'mode'})) |
|
135
|
0 |
0 |
if $targ ne $file->{'data'} |
|
140
|
0 |
0 |
unless $file->{'mode'} == $old->{'mode'} |
|
142
|
0 |
0 |
if (S_ISREG($file->{'mode'})) { } |
|
|
0 |
0 |
elsif (S_ISBLK($file->{'mode'}) or S_ISCHR($file->{'mode'})) { } |
|
146
|
0 |
0 |
if defined $file->{'size'} and $file->{'size'} != $old->{'size'} or not _contents_same($file, $dst_abs) |
|
151
|
0 |
0 |
if $file->{'rdev'} != $old->{'rdev'} |
|
166
|
0 |
0 |
if (defined $file->{'rdev'}) { } |
|
|
0 |
0 |
elsif (defined $file->{'rdev_major'} and defined $file->{'rdev_minor'}) { } |
|
180
|
1 |
5 |
if ($file->{'nlink'} > 1) |
|
181
|
1 |
0 |
if (defined(my $already = $self->_link_map->{"$file->{'dev'}:$file->{'ino'}"})) |
|
183
|
0 |
1 |
unless link $already, $dst |
|
190
|
3 |
2 |
if defined $file->{'dev'} and defined $file->{'ino'} |
|
195
|
0 |
5 |
if (builtin::blessed($file->{'data'}) and $file->{'data'}->can('abs_path') and substr($file->{'data'}->abs_path // '', 0, length $self->tmp) eq $self->tmp) { } |
|
206
|
0 |
5 |
unless rename $tmp, $dst |
|
213
|
8 |
0 |
unless $old |
|
222
|
0 |
5 |
unless length $file->{'data'} |
|
223
|
0 |
5 |
unless symlink $file->{'data'}, $dst_abs |
|
230
|
0 |
1 |
if (defined $file->{'rdev'} and not defined $file->{'rdev_major'} && defined $file->{'rdev_minor'}) |
|
245
|
0 |
0 |
unless POSIX::mkfifo($dst_abs, $file->{'mode'}) |
|
253
|
0 |
1 |
unless socket my $s, Socket::AF_UNIX(), Socket::SOCK_STREAM(), 0 |
|
254
|
0 |
1 |
unless bind $s, Socket::pack_sockaddr_un($dst_abs) |
|
271
|
0 |
20 |
unless my($mode, $uid, $gid, $atime, $mtime) = (lstat $abs_path)[2, 4, 5, 8, 9] |
|
275
|
0 |
20 |
if ($change_uid or $change_gid) |
|
277
|
0 |
0 |
unless $change_uid and $> == 0 |
|
278
|
0 |
0 |
unless $change_gid and $) == 0 || grep($stat->{'gid'}, split(/ /u, $), 0)) |
|
280
|
0 |
0 |
if $uid >= 0 or $gid >= 0 |
|
287
|
6 |
14 |
if (not S_ISLNK($mode) and ($mode & 4095) != ($stat->{'mode'} & 4095)) |
|
290
|
0 |
6 |
if (S_ISDIR($mode) and not $stat->{'mode'} & 146 && $stat->{'mode'} & 73) { } |
|
295
|
0 |
6 |
unless chmod $stat->{'mode'} & 4095, $abs_path |
|
299
|
10 |
5 |
if (not S_ISLNK($mode) and defined $stat->{'mtime'} || defined $stat->{'atime'}) |
|
300
|
5 |
5 |
if (S_ISDIR($mode)) { } |
|
306
|
0 |
5 |
unless utime $stat->{'atime'}, $stat->{'mtime'}, $abs_path |
|
311
|
5 |
15 |
if @delayed |
|
315
|
0 |
5 |
if (grep(($_ eq "chmod"), @delayed)) |
|
317
|
0 |
0 |
unless chmod $stat->{'mode'} & 4095, $abs_path |
|
319
|
5 |
0 |
if (grep(($_ eq "utime"), @delayed)) |
|
320
|
0 |
5 |
unless utime $stat->{'atime'}, $stat->{'mtime'}, $abs_path |