diff options
author | Junio C Hamano <junkio@cox.net> | 2006-02-20 14:14:15 -0800 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-02-20 14:24:05 -0800 |
commit | 7ae0dc015dc38ce937bb2c044ff8b4875678e8af (patch) | |
tree | 814bd2dc9f22394a7003e732e5aec7bc6ab0bb38 | |
parent | e415907d6c746616f399cf2a4679372dd0cbce83 (diff) | |
download | git-7ae0dc015dc38ce937bb2c044ff8b4875678e8af.tar.gz |
svnimport: avoid open "-|" list form for Perl 5.6
Signed-off-by: Junio C Hamano <junkio@cox.net>
-rwxr-xr-x | git-svnimport.perl | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/git-svnimport.perl b/git-svnimport.perl index c536d7026d..ee2940f480 100755 --- a/git-svnimport.perl +++ b/git-svnimport.perl @@ -10,7 +10,6 @@ # The head revision is on branch "origin" by default. # You can change that with the '-o' option. -require 5.008; # for shell-safe open("-|",LIST) use strict; use warnings; use Getopt::Std; @@ -322,8 +321,12 @@ sub get_file($$$) { return undef unless defined $name; } - open my $F, '-|', "git-hash-object", "-w", $name + my $pid = open(my $F, '-|'); + die $! unless defined $pid; + if (!$pid) { + exec("git-hash-object", "-w", $name) or die "Cannot create object: $!\n"; + } my $sha = <$F>; chomp $sha; close $F; @@ -398,7 +401,12 @@ sub copy_path($$$$$$$$) { $srcpath =~ s#/*$#/#; } - open my $f,"-|","git-ls-tree","-r","-z",$gitrev,$srcpath; + my $pid = open my $f,'-|'; + die $! unless defined $pid; + if (!$pid) { + exec("git-ls-tree","-r","-z",$gitrev,$srcpath) + or die $!; + } local $/ = "\0"; while(<$f>) { chomp; @@ -554,7 +562,11 @@ sub commit { @o1 = @old; @old = (); } - open my $F, "-|", "git-ls-files", "-z", @o1 or die $!; + my $pid = open my $F, "-|"; + die "$!" unless defined $pid; + if (!$pid) { + exec("git-ls-files", "-z", @o1) or die $!; + } @o1 = (); local $/ = "\0"; while(<$F>) { |