# [BUGFIX][RESEND]git-cvsexportcommit can't handle merge commits correctly

2 messages from 2006-07-07 to 2006-07-09. Participants: Peter Baumann, Martin Langhoff (CatalystIT).
Thread: https://gitlist.dev/t/4795

## Peter Baumann, 2006-07-07 10:55

Subject: [BUGFIX][RESEND]git-cvsexportcommit can't handle merge commits correctly
Message-ID: <20060707105541.GA17004@xp.machine.xx>
URL: https://gitlist.dev/e/20060707105541.GA17004%40xp.machine.xx

```
git-cvsexportcommit should check if the parent (supplied on the cmdline) to use
for a merge commit is one of the real parents of the merge.

But it errors out if the _first_ parent doesn't match and never checks
the other parents.

Signed-off-by: Peter Baumann <siprbaum@stud.informatik.uni-erlangen.de>
---
This is a resend with an improved description, because my first attempt
didn't generate enough attention :-)

 git-cvsexportcommit.perl |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/git-cvsexportcommit.perl b/git-cvsexportcommit.perl
index d1051d0..5dcb2f9 100755
--- a/git-cvsexportcommit.perl
+++ b/git-cvsexportcommit.perl
@@ -63,15 +63,15 @@ foreach my $p (@commit) {
 }
 
 if ($parent) {
+    my $found;
     # double check that it's a valid parent
     foreach my $p (@parents) {
-	my $found;
 	if ($p eq $parent) {
 	    $found = 1;
 	    last;
 	}; # found it
-	die "Did not find $parent in the parents for this commit!";
     }
+    die "Did not find $parent in the parents for this commit!" if !$found;
 } else { # we don't have a parent from the cmdline...
     if (@parents == 1) { # it's safe to get it from the commit
 	$parent = $parents[0];
-- 
1.4.0

```

## Martin Langhoff (CatalystIT), 2006-07-09 23:12

Subject: Re: [BUGFIX][RESEND]git-cvsexportcommit can't handle merge commits correctly
Message-ID: <44B18D64.9090409@catalyst.net.nz>
URL: https://gitlist.dev/e/44B18D64.9090409%40catalyst.net.nz
In-Reply-To: <20060707105541.GA17004@xp.machine.xx>

```
Peter Baumann wrote:
> git-cvsexportcommit should check if the parent (supplied on the cmdline) to use
> for a merge commit is one of the real parents of the merge.
> 
> But it errors out if the _first_ parent doesn't match and never checks
> the other parents.
> 

Ack. Thanks for spotting this!


m
-- 
-----------------------------------------------------------------------
Martin @ Catalyst .Net .NZ  Ltd, PO Box 11-053, Manners St,  Wellington
WEB: http://catalyst.net.nz/           PHYS: Level 2, 150-154 Willis St
OFFICE: +64(4)916-7224                              MOB: +64(21)364-017
       Make things as simple as possible, but no simpler - Einstein
-----------------------------------------------------------------------

```
