@matheusbsbs / matheus-bagliano / commits / 6a2009e7f3
Fork 0

git-svn: Fix discarding of extra parents from svn:mergeinfo

If parent J is an ancestor of parent I, then parent J should be discarded, not I. Note that J is an ancestor of I if and only if rev-list I..J is emtpy, which is what we are testing here. Signed-off-by: Tuomas Suutari <tuomas.suutari@gmail.com> Acked-by: Eric Wong <normalperson@yhbt.net>

Tuomas Suutari committed Feb 22, 2010 at 20:12 UTC 6a2009e7f34148a737d8832887dcd491905017be
2 files changed +2 -2
git-svn.perl
+1 -1
@@ -3273,7 +3273,7 @@ sub find_extra_svn_parents {
3273 "$new_parents[$i]..$new_parents[$j]",
3274 );
3275 if ( !$revs ) {
3276 - undef($new_parents[$i]);
3276 + undef($new_parents[$j]);
3277 }
3278 }
3279 }
t/t9151-svn-mergeinfo.sh
+1 -1
@@ -33,7 +33,7 @@ test_expect_success 'svn non-merge merge commits did not become git merge commit
33 [ -z "$bad_non_merges" ]
34 '
35
36 -test_expect_failure 'commit made to merged branch is reachable from the merge' '
36 +test_expect_success 'commit made to merged branch is reachable from the merge' '
37 before_commit=$(git rev-list --all --grep="trunk commit before merging trunk to b2")
38 merge_commit=$(git rev-list --all --grep="Merge trunk to b2")
39 not_reachable=$(git rev-list -1 $before_commit --not $merge_commit)