diff options
author | Martin Langhoff <martin@catalyst.net.nz> | 2007-01-08 11:08:46 +0300 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2007-01-08 14:01:35 +0300 |
commit | 4083c2fce86c777415a3bc0d5813bcb73f676f98 (patch) | |
tree | 256d566f5c13a404ad9bc06823fcf9b8a8ab3d04 | |
parent | eec84962108d073d9cc8fdc54ec973a97355ee0f (diff) |
cvsimport: cleanup temporary cvsps file
It is bad manners to leave these sizable files
around when we are done with them.
Signed-off-by: Martin Langhoff <martin@catalyst.net.nz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
-rwxr-xr-x | git-cvsimport.perl | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/git-cvsimport.perl b/git-cvsimport.perl index a86ee3cb18..1018f4f6fa 100755 --- a/git-cvsimport.perl +++ b/git-cvsimport.perl @@ -575,9 +575,11 @@ if ($opt_A) { # run cvsps into a file unless we are getting # it passed as a file via $opt_P # +my $cvspsfile; unless ($opt_P) { print "Running cvsps...\n" if $opt_v; my $pid = open(CVSPS,"-|"); + my $cvspsfh; die "Cannot fork: $!\n" unless defined $pid; unless ($pid) { my @opt; @@ -590,18 +592,18 @@ unless ($opt_P) { exec("cvsps","--norc",@opt,"-u","-A",'--root',$opt_d,$cvs_tree); die "Could not start cvsps: $!\n"; } - my ($cvspsfh, $cvspsfile) = tempfile('gitXXXXXX', SUFFIX => '.cvsps', - DIR => File::Spec->tmpdir()); + ($cvspsfh, $cvspsfile) = tempfile('gitXXXXXX', SUFFIX => '.cvsps', + DIR => File::Spec->tmpdir()); while (<CVSPS>) { print $cvspsfh $_; } close CVSPS; close $cvspsfh; - $opt_P = $cvspsfile; +} else { + $cvspsfile = $opt_P; } - -open(CVS, "<$opt_P") or die $!; +open(CVS, "<$cvspsfile") or die $!; ## cvsps output: #--------------------- @@ -936,6 +938,10 @@ while (<CVS>) { } commit() if $branch and $state != 11; +unless ($opt_P) { + unlink($cvspsfile); +} + # The heuristic of repacking every 1024 commits can leave a # lot of unpacked data. If there is more than 1MB worth of # not-packed objects, repack once more. |