| line |
true |
false |
branch |
|
117
|
650 |
0 |
unless (defined $self->protocol) |
|
120
|
620 |
30 |
unless (defined $self->filenameroot) |
|
123
|
626 |
24 |
unless (defined $self->serializer_suffix) |
|
140
|
0 |
1323 |
unless open my $fh, $file |
|
150
|
0 |
37 |
if ($symlink =~ m[/]) |
|
158
|
0 |
1323 |
unless $suffix |
|
160
|
1323 |
0 |
if ($suffix eq '.yaml') { } |
|
|
0 |
0 |
elsif ($HAVE->{'Data::Serializer'}) { } |
|
171
|
1323 |
13017 |
if $k ne lc $k |
|
174
|
0 |
1323 |
unless (defined $self->protocol) |
|
188
|
6250 |
4 |
unless ($self->_current_tempfile_fh) |
|
189
|
156 |
6094 |
if (my $tempfile = $self->_current_tempfile) |
|
190
|
22 |
134 |
if (-e $tempfile) |
|
413
|
2240 |
0 |
if not $seen_interval{$_->{'interval'}}++ |
|
415
|
0 |
424 |
unless $self->aggregator |
|
423
|
724 |
456 |
if ($option{'force'} or $i == 0) { } |
|
427
|
384 |
72 |
if (-e $next_rfile) { } |
|
431
|
66 |
318 |
if ($next_age > $prev->interval_secs) |
|
438
|
862 |
318 |
if ($want_merge) { } |
|
452
|
0 |
36 |
unless $self->aggregator |
|
476
|
1973 |
0 |
if ($File::Rsync::Mirror::Recentfile::Config{'d_symlink'} eq 'define') { } |
|
478
|
1948 |
25 |
if (-l $recentrecentfile) { } |
|
480
|
1930 |
18 |
if ($found_symlink eq $self->rfilename) { } |
|
488
|
25 |
18 |
if (1 == $howto_create_symlink) { } |
|
489
|
0 |
25 |
unless symlink $self->rfilename, $recentrecentfile |
|
492
|
0 |
18 |
unless symlink $self->rfilename, "$recentrecentfile.$$" |
|
493
|
0 |
18 |
unless rename "$recentrecentfile.$$", $recentrecentfile |
|
498
|
0 |
0 |
unless cp($self->rfilename, "$recentrecentfile.$$") |
|
499
|
0 |
0 |
unless rename "$recentrecentfile.$$", $recentrecentfile |
|
514
|
16 |
31 |
unless (defined $x) |
|
535
|
16 |
109 |
unless ($done) |
|
562
|
43 |
33 |
if ($self->_use_tempfile) { } |
|
563
|
10 |
33 |
if ($self->ttl_reached) { } |
|
574
|
0 |
43 |
if ($fh) { } |
|
581
|
27 |
16 |
if (defined $rfile and -e $rfile) |
|
584
|
0 |
27 |
unless cp($rfile, $dst) |
|
591
|
0 |
43 |
if ($self->verbose) |
|
592
|
0 |
0 |
-e $dst ? : |
|
612
|
0 |
0 |
if (++$retried >= 3) |
|
618
|
0 |
43 |
if ($gaveup) { } |
|
627
|
0 |
43 |
if ($self->verbose) |
|
632
|
0 |
43 |
unless chmod $mode, $dst |
|
639
|
21 |
22 |
if defined $tempdir |
|
640
|
22 |
0 |
unless ($tempdir = $self->tempdir) |
|
643
|
0 |
22 |
unless (-d $tempdir) |
|
663
|
0 |
43 |
unless chmod $mode, $dst |
|
664
|
10 |
33 |
if ($self->_use_tempfile) |
|
673
|
0 |
0 |
if (my $vl = $self->verboselog) { } |
|
674
|
0 |
0 |
unless open $fh, '>>', $vl |
|
699
|
0 |
0 |
if ($self->verbose) |
|
700
|
0 |
0 |
-e $dst ? : |
|
712
|
0 |
0 |
unless my $remoteroot = $self->remoteroot |
|
722
|
0 |
0 |
if ($self->verbose) |
|
738
|
6057 |
80375 |
if (@_ >= 2) |
|
743
|
1 |
86431 |
unless (defined $interval) |
|
761
|
0 |
31052 |
unless (defined $interval) |
|
764
|
1 |
31051 |
unless my($n, $t) = $interval =~ /^(\d*)([smhdWMQYZ]$)/ |
|
766
|
1144 |
29907 |
if ($interval eq 'Z') { } |
|
|
29907 |
0 |
elsif (exists $seconds{$t} and $n =~ /^\d+$/) { } |
|
784
|
1987 |
11443 |
if (@_ >= 2) |
|
804
|
0 |
1396 |
unless (defined $path) |
|
823
|
0 |
3697 |
if my $locked = $self->_is_locked |
|
832
|
0 |
0 |
if (open my $fh, '<', $procfile) { } |
|
834
|
0 |
0 |
if (do {
not $process =~ /^\d+$/
}) { } |
|
|
0 |
0 |
elsif ($$ == $process) { } |
|
|
0 |
0 |
elsif (kill 0, $process) { } |
|
836
|
0 |
0 |
unless $have_warned{'unknown'}++ |
|
840
|
0 |
0 |
unless $have_warned{$process}++ |
|
847
|
0 |
0 |
unless $have_warned{'unknown'}++ |
|
850
|
0 |
0 |
if (time - $start > $locktimeout) |
|
854
|
0 |
3697 |
unless open my $fh, '>', $procfile |
|
856
|
0 |
3697 |
unless close $fh |
|
889
|
772 |
90 |
$my_recent->[0] ? : |
|
890
|
862 |
0 |
$other_recent->[0] ? : |
|
893
|
90 |
772 |
unless ($my_recent->[0]) |
|
897
|
862 |
0 |
if ($epoch) |
|
898
|
278 |
584 |
if (($other->dirtymark || 0) ne ($self->dirtymark || 0)) { } |
|
|
534 |
50 |
elsif (my $merged = $self->merged) { } |
|
904
|
0 |
534 |
if (@$other_recent and &_bigfloatlt($other_recent->[-1]{'epoch'}, $oldest_allowed)) |
|
920
|
0 |
29296 |
if &_bigfloatlt($oevepoch, $oldest_allowed) |
|
922
|
0 |
29296 |
if $have_path{$path}++ |
|
923
|
24 |
29272 |
if ($self->interval eq 'Z' and $oev->{'type'} eq 'delete' and not $self->keep_delete_objects_forever) { } |
|
929
|
5574 |
23698 |
if (not $myepoch or &_bigfloatgt($oevepoch, $myepoch)) |
|
935
|
812 |
50 |
if ($something_done) |
|
947
|
28370 |
38702 |
if (not @$my_recent or @$other_recent_filtered and &_bigfloatge($other_recent_filtered->[0]{'epoch'}, $my_recent->[0]{'epoch'})) { } |
|
952
|
22692 |
16010 |
if $$have_path{$event->{'path'}}++ |
|
954
|
12 |
44368 |
if defined $last_epoch and $event->{'epoch'} eq $last_epoch |
|
958
|
12 |
800 |
if ($epoch_conflict) |
|
962
|
12 |
312 |
if ($have_epoch{$epoch}++) |
|
971
|
278 |
534 |
if (not $self->dirtymark or $other->dirtymark ne $self->dirtymark) |
|
985
|
0 |
862 |
if ($self->interval_secs <= $other->interval_secs) |
|
1006
|
5438 |
11920 |
if (defined $set) |
|
1011
|
11189 |
923 |
if ($merged and $into = $merged->{'into_interval'} and defined $self->_interval) |
|
1013
|
0 |
11189 |
if ($into eq $self->interval) { } |
|
|
0 |
11189 |
elsif ($self->interval_secs($into) < $self->interval_secs) { } |
|
1058
|
27863 |
4547 |
if (defined $v) |
|
1112
|
29 |
2435 |
if $i == $last_item |
|
1113
|
3 |
2432 |
if ($status->{'mustreturn'}) |
|
1114
|
2 |
1 |
if ($self->_current_tempfile and not $self->_current_tempfile_fh) |
|
1117
|
0 |
2 |
unless unlink $t |
|
1124
|
18 |
11 |
if (@dlcollector) |
|
1126
|
0 |
18 |
if (not $success or $@) |
|
1132
|
0 |
29 |
if ($self->verbose) |
|
1156
|
1068 |
1396 |
if $done->covered($recent_event->{'epoch'}) |
|
1157
|
592 |
804 |
if ($pathdb) |
|
1159
|
40 |
0 |
if ($rec and $rec->{'recentepoch'}) |
|
1160
|
0 |
40 |
if (&_bigfloatgt($rec->{'recentepoch'}, $recent_event->{'epoch'})) |
|
1168
|
1372 |
24 |
if ($recent_event->{'type'} eq 'new') { } |
|
|
24 |
0 |
elsif ($recent_event->{'type'} eq 'delete') { } |
|
1184
|
0 |
24 |
if ($options->{'skip-deletes'}) { } |
|
1188
|
6 |
18 |
if (not -e _) { } |
|
|
18 |
0 |
elsif (-l _ or not -d _) { } |
|
1199
|
6 |
18 |
if ($pathdb) |
|
1220
|
0 |
1372 |
if ($self->verbose) |
|
1221
|
0 |
0 |
-e $dst ? : |
|
1236
|
0 |
1372 |
if ($self->verbose) |
|
1241
|
15 |
1357 |
if (@$dlcollector >= $max_files_per_connection) { } |
|
1244
|
15 |
0 |
unless defined $sleep |
|
1246
|
3 |
12 |
if ($options->{'piecemeal'}) |
|
1253
|
0 |
12 |
if (not $success or $@) |
|
1258
|
0 |
12 |
if ($self->verbose) |
|
1267
|
15 |
18 |
if ($pathdb) |
|
1290
|
29 |
0 |
if (rename $trecentfile, $rfile) { } |
|
1297
|
10 |
19 |
if (my $ctfh = $self->_current_tempfile_fh) |
|
1307
|
18 |
18 |
unless (unlink $dst) |
|
1309
|
0 |
18 |
if $options->{'verbose'} |
|
1311
|
0 |
36 |
if ($self->verbose) |
|
1326
|
0 |
0 |
unless (rmdir $dst) |
|
1328
|
0 |
0 |
if $options->{'verbose'} |
|
1330
|
0 |
0 |
if ($self->verbose) |
|
1365
|
33 |
0 |
if (ref $path and ref $path eq 'ARRAY') { } |
|
1391
|
0 |
0 |
if ($self->_my_ignore_link_stat_errors and join($", @err) =~ /^ rsync: \s link_stat /x) |
|
1392
|
0 |
0 |
if ($self->verbose) |
|
1399
|
0 |
0 |
if (++$retried >= 3) |
|
1407
|
33 |
0 |
unless ($gaveup) |
|
1423
|
0 |
0 |
if ($self->_my_ignore_link_stat_errors and join($", @err) =~ /^ rsync: \s link_stat /x) |
|
1424
|
0 |
0 |
if ($self->verbose) |
|
1440
|
0 |
0 |
unless defined $x |
|
1447
|
33 |
7887 |
if ($self->_use_tempfile) |
|
1450
|
7887 |
33 |
unless ($rfile and -s $rfile) |
|
1519
|
38 |
7863 |
if ($self->is_slave) |
|
1523
|
0 |
7901 |
unless my $rfile_or_tempfile = $self->_my_current_rfile |
|
1524
|
132 |
7769 |
unless -e $rfile_or_tempfile |
|
1534
|
0 |
7769 |
if ($err or not $data) |
|
1538
|
0 |
7769 |
if (&reftype($data) eq 'ARRAY') { } |
|
1547
|
5363 |
2406 |
unless grep {defined $options{$_};} 'after', 'before', 'contains', 'max', 'skip-deletes' |
|
1556
|
2400 |
6 |
if ($info) |
|
1560
|
6 |
2400 |
if (defined $options->{'after'}) |
|
1561
|
6 |
0 |
if ($re->[0]{'epoch'} > $options->{'after'}) { } |
|
1562
|
6 |
0 |
if (my $f = &first(sub {
$re->[$_]{'epoch'} <= $options->{'after'};
}
, 0 .. $#$re)) |
|
1574
|
2400 |
6 |
if (defined $options->{'before'}) |
|
1575
|
2184 |
216 |
if ($re->[0]{'epoch'} > $options->{'before'}) { } |
|
1576
|
624 |
1560 |
if (my $f = &first(sub {
$re->[$_]{'epoch'} < $options->{'before'};
}
, 0 .. $last_item)) |
|
1587
|
2406 |
0 |
if (0 != $first_item or -1 != $last_item) |
|
1590
|
0 |
2406 |
if ($options->{'skip-deletes'}) |
|
1593
|
0 |
2406 |
if (my $contopt = $options->{'contains'}) |
|
1596
|
0 |
0 |
if (exists $contopt->{$allow}) |
|
1602
|
0 |
0 |
if (keys %$contopt > $seen_allowed) |
|
1608
|
0 |
2406 |
if ($options->{'max'} and @$re > $options->{'max'}) |
|
1622
|
7769 |
66451 |
if ($k ne lc $k) |
|
1626
|
53910 |
12541 |
if defined $self->$k |
|
1631
|
7769 |
0 |
if (my(@stat) = stat $rfile_or_tempfile) { } |
|
1647
|
7769 |
0 |
if (@$re) |
|
1660
|
7769 |
0 |
if ($suffix eq '.yaml') { } |
|
|
0 |
0 |
elsif ($HAVE->{'Data::Serializer'}) { } |
|
1668
|
0 |
0 |
unless open my $fh, $rfile_or_tempfile |
|
1690
|
5 |
18 |
if ($old_dirtymark and $new_dirtymark and $new_dirtymark ne $old_dirtymark) |
|
1723
|
6 |
12 |
if (defined $set) |
|
1743
|
16 |
76 |
if (defined $set) |
|
1747
|
6 |
86 |
unless (defined $remoteroot) |
|
1748
|
0 |
6 |
defined $self->remote_host ? : |
|
|
0 |
6 |
defined $self->remote_module ? : |
|
|
6 |
0 |
defined $self->remote_dir ? : |
|
1779
|
6 |
0 |
if (my($f, $i, $s) = $rfname =~ /$splitter/) { } |
|
1798
|
13296 |
5970 |
if defined $rfile |
|
1817
|
29 |
47 |
unless (defined $rsync) |
|
1819
|
29 |
0 |
if ($HAVE->{'File::Rsync'}) { } |
|
1849
|
0 |
0 |
unless defined $max_rsync_errors |
|
1850
|
0 |
0 |
if ($max_rsync_errors >= 0 and $no_success_count >= $max_rsync_errors) |
|
1863
|
0 |
0 |
if $sleep > 300 |
|
1914
|
3964 |
57860 |
if ref $o |
|
1929
|
43 |
0 |
unless defined $ttl |
|
1930
|
10 |
33 |
if ($now > $have_mirrored + $ttl) |
|
1945
|
6254 |
3697 |
unless $self->_is_locked |
|
1947
|
0 |
3697 |
unless unlink "$rfile.lock/process" |
|
1948
|
0 |
3697 |
unless rmdir "$rfile.lock" |
|
1999
|
42 |
1893 |
unless @$recent |
|
2000
|
1695 |
198 |
if (&_bigfloatgt('' . $epoch, $recent->[0]{'epoch'})) { } |
|
2008
|
0 |
424 |
if (defined $path or defined $type or defined $dirty_epoch) |
|
2009
|
0 |
1549 |
unless defined $path |
|
2010
|
0 |
1549 |
unless defined $type |
|
2011
|
0 |
1549 |
unless $type =~ /(new|delete)/ |
|
2015
|
1599 |
374 |
if $ctx->{'something_done'} |
|
2038
|
0 |
0 |
if $ctx->{'something_done'} |
|
2046
|
42 |
1931 |
unless ($recent->[0]) |
|
2053
|
468 |
1505 |
unless ($canonmeth) |
|
2059
|
0 |
1973 |
if ($self->verbose and @$batch > 1) |
|
2061
|
0 |
0 |
if $@ |
|
2071
|
0 |
1973 |
if $console and not $i % 50 |
|
2079
|
0 |
1973 |
if $console |
|
2080
|
38 |
1935 |
if ($setting_new_dirty_mark) |
|
2084
|
1184 |
1973 |
if (&_bigfloatlt($recent->[-1]{'epoch'}, $oldest_allowed)) { } |
|
2096
|
0 |
424 |
if (defined $path or defined $type or defined $dirty_epoch) |
|
2103
|
38 |
1935 |
if (defined $dirty_epoch and &_bigfloatgt($now, $dirty_epoch)) { } |
|
2110
|
1051 |
922 |
if ($merged->{'epoch'} and not $setting_new_dirty_mark) { } |
|
2119
|
1549 |
424 |
if (defined $path and $path =~ s/^\Q$lrd\E//) |
|
2123
|
38 |
1511 |
if (defined $dirty_epoch) { } |
|
2130
|
0 |
38 |
if (&_bigfloatgt($epoch, $now)) |
|
2135
|
38 |
0 |
if (not defined $merged->{'epoch'} or &_bigfloatlt($epoch, $merged->{'epoch'})) |
|
2142
|
1549 |
0 |
if (defined $splicepos) |
|
2162
|
0 |
38 |
if (exists $paths_in_recent->{$path}) |
|
2165
|
0 |
0 |
if ($recent->[$i]{'path'} eq $path) { } |
|
2166
|
0 |
0 |
if ($recent->[$i]{'epoch'} eq $epoch) |
|
2175
|
0 |
0 |
unless $cancel |
|
2177
|
0 |
38 |
if (not exists $recent->[0] or &_bigfloatgt($epoch, $recent->[0]{'epoch'})) { } |
|
|
38 |
0 |
elsif (&_bigfloatlt($epoch, $recent->[-1]{'epoch'})) { } |
|
2183
|
0 |
0 |
if (&_bigfloatgt(scalar($memo_splicepos <= $#$recent && $epoch), $recent->[$memo_splicepos]{'epoch'})) { } |
|
2190
|
0 |
0 |
if ($epoch eq $recent->[$i]{'epoch'}) |
|
2191
|
0 |
0 |
$i ? : |
|
2193
|
0 |
0 |
if (&_bigfloatgt($epoch, $recent->[$i]{'epoch'})) |
|
2224
|
102 |
45 |
if (defined $set) |
|
2228
|
8 |
139 |
unless (defined $x) |
|
2245
|
21 |
41 |
if ($self->_uptodateness_ever_reached and not $self->seeded) |
|
2257
|
41 |
21 |
unless (defined $uptodate) |
|
2260
|
18 |
23 |
if (exists $minmax->{'mtime'}) |
|
2263
|
18 |
0 |
if (@stat) { } |
|
2265
|
0 |
18 |
if (defined $mtime and defined $minmax->{'mtime'} and $mtime > $minmax->{'mtime'}) { } |
|
2270
|
18 |
0 |
defined $covered ? : |
|
2281
|
23 |
39 |
unless (defined $uptodate) |
|
2285
|
36 |
26 |
if ($uptodate) |
|
2310
|
0 |
3241 |
unless defined $recent |
|
2313
|
0 |
131355 |
if (defined $Last_epoch and &_bigfloatge($recent->[$i]{'epoch'}, $Last_epoch)) |
|
2324
|
1999 |
1242 |
if (not defined $minmax->{'max'} or &_bigfloatlt($minmax->{'max'}, $recent->[0]{'epoch'})) |
|
2325
|
1999 |
0 |
@$recent && exists $recent->[0]{'epoch'} ? : |
|
2327
|
626 |
2615 |
if (not defined $minmax->{'min'} or &_bigfloatlt($minmax->{'min'}, $recent->[-1]{'epoch'})) |
|
2328
|
626 |
0 |
@$recent && exists $recent->[-1]{'epoch'} ? : |
|
2345
|
0 |
0 |
unless rename "$rfile.new", $rfile |
|
2363
|
3223 |
18 |
if ($suffix eq '.yaml') { } |
|
|
18 |
0 |
elsif ($HAVE->{'Data::Serializer'}) { } |
|
2372
|
0 |
3241 |
unless open my $fh, '>', "$rfile.new" |
|
2374
|
0 |
3241 |
unless close $fh |
|
2375
|
0 |
3241 |
unless rename "$rfile.new", $rfile |