From: Junio C Hamano Date: Sat, 18 Mar 2006 08:43:47 +0000 (-0800) Subject: Merge branch 'jc/empty' X-Git-Tag: v1.3.0-rc1~20^2~1 X-Git-Url: https://git.verplant.org/?a=commitdiff_plain;h=8a414ad50cd9edfe6c8f0a6b9b08df4aaa9ccb75;p=git.git Merge branch 'jc/empty' * jc/empty: revision traversal: --remove-empty fix (take #2). revision traversal: --remove-empty fix. Conflicts: revision.c (adjust for the updates by Fredrik) --- 8a414ad50cd9edfe6c8f0a6b9b08df4aaa9ccb75 diff --cc revision.c index 01386ed6,73fba5d3..12cd0529 --- a/revision.c +++ b/revision.c @@@ -310,14 -314,22 +310,22 @@@ static void try_to_simplify_commit(stru commit->parents = parent; return; - case TREE_NEW: + case REV_TREE_NEW: if (revs->remove_empty_trees && - same_tree_as_empty(p->tree)) { + rev_same_tree_as_empty(p->tree)) { - *pp = parent->next; - continue; + /* We are adding all the specified + * paths from this parent, so the + * history beyond this parent is not + * interesting. Remove its parents + * (they are grandparents for us). + * IOW, we pretend this parent is a + * "root" commit. + */ + parse_commit(p); + p->parents = NULL; } /* fallthrough */ - case TREE_DIFFERENT: + case REV_TREE_DIFFERENT: tree_changed = 1; pp = &parent->next; continue;