Fix cloning (memory corruption)
[git.git] / git-cvsimport.perl
index f35c0d0..bbb83fb 100755 (executable)
@@ -487,7 +487,10 @@ unless($pid) {
        my @opt;
        @opt = split(/,/,$opt_p) if defined $opt_p;
        unshift @opt, '-z', $opt_z if defined $opt_z;
-       exec("cvsps",@opt,"-u","-A","--cvs-direct",'--root',$opt_d,$cvs_tree);
+       unless (defined($opt_p) && $opt_p =~ m/--no-cvs-direct/) {
+               push @opt, '--cvs-direct';
+       }
+       exec("cvsps",@opt,"-u","-A",'--root',$opt_d,$cvs_tree);
        die "Could not start cvsps: $!\n";
 }
 
@@ -567,6 +570,7 @@ my $commit = sub {
        unless($pid) {
                $pr->writer();
                $pw->reader();
+               open(OUT,">&STDOUT");
                dup2($pw->fileno(),0);
                dup2($pr->fileno(),1);
                $pr->close();
@@ -584,10 +588,9 @@ my $commit = sub {
                                if ( -e "$git_dir/refs/heads/$mparent") {
                                        $mparent = get_headref($mparent, $git_dir);
                                        push @par, '-p', $mparent;
-                                       # printing here breaks import # 
-                                       # # print "Merge parent branch: $mparent\n" if $opt_v;
+                                       print OUT "Merge parent branch: $mparent\n" if $opt_v;
                                }
-                       } 
+                       }
                }
 
                exec("env",