If ignore_perishable is set, increment a count of all excluded
[rsync/rsync.git] / support / file-attr-restore
index 11d7524..c4da61e 100755 (executable)
@@ -47,7 +47,8 @@ while (<>) {
     my($type, $perms, $owner, $group, $name) = /$detail_line/;
     die "Invalid input line $.:\n$_" unless defined $name;
     die "A filename is not properly escaped:\n$_" unless $name =~ /^[^"\\]*(\\(\d\d\d|\D)[^"\\]*)*$/;
-    my $fn = eval "\"$name\"";
+    my $fn = $name;
+    $fn =~ s/\\(\d+|.)/ eval "\"\\$1\"" /eg;
     if ($type eq '-') {
        undef $type unless -f $fn;
     } elsif ($type eq 'd') {