diff --git a/revision.c b/revision.c index 01386ed6d4..38a8d1b937 100644 --- a/revision.c +++ b/revision.c @@ -313,8 +313,12 @@ static void try_to_simplify_commit(struct rev_info *revs, struct commit *commit) case REV_TREE_NEW: if (revs->remove_empty_trees && rev_same_tree_as_empty(p->tree)) { - *pp = parent->next; - continue; + /* We are adding all the specified paths from + * this parent, so the parents of it is + * not interesting, but the difference between + * this parent and us still is interesting. + */ + p->object.flags |= UNINTERESTING; } /* fallthrough */ case REV_TREE_DIFFERENT: diff --git a/t/annotate-tests.sh b/t/annotate-tests.sh index 9c5a15a15e..114938c3ff 100644 --- a/t/annotate-tests.sh +++ b/t/annotate-tests.sh @@ -94,7 +94,7 @@ test_expect_success \ test_expect_success \ 'merge-setup part 4' \ 'echo "evil merge." >>file && - EDITOR=: git commit -a --amend' + EDITOR=: VISUAL=: git commit -a --amend' test_expect_success \ 'Two lines blamed on A, one on B, two on B1, one on B2, one on A U Thor' \