|
|
@ -313,12 +313,16 @@ static void try_to_simplify_commit(struct rev_info *revs, struct commit *commit) |
|
|
|
case REV_TREE_NEW: |
|
|
|
case REV_TREE_NEW: |
|
|
|
if (revs->remove_empty_trees && |
|
|
|
if (revs->remove_empty_trees && |
|
|
|
rev_same_tree_as_empty(p->tree)) { |
|
|
|
rev_same_tree_as_empty(p->tree)) { |
|
|
|
/* We are adding all the specified paths from |
|
|
|
/* We are adding all the specified |
|
|
|
* this parent, so the parents of it is |
|
|
|
* paths from this parent, so the |
|
|
|
* not interesting, but the difference between |
|
|
|
* history beyond this parent is not |
|
|
|
* this parent and us still is interesting. |
|
|
|
* interesting. Remove its parents |
|
|
|
|
|
|
|
* (they are grandparents for us). |
|
|
|
|
|
|
|
* IOW, we pretend this parent is a |
|
|
|
|
|
|
|
* "root" commit. |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
p->object.flags |= UNINTERESTING; |
|
|
|
parse_commit(p); |
|
|
|
|
|
|
|
p->parents = NULL; |
|
|
|
} |
|
|
|
} |
|
|
|
/* fallthrough */ |
|
|
|
/* fallthrough */ |
|
|
|
case REV_TREE_DIFFERENT: |
|
|
|
case REV_TREE_DIFFERENT: |
|
|
|