From: Junio C Hamano Date: Thu, 13 Feb 2014 21:38:47 +0000 (-0800) Subject: Merge branch 'jc/revision-range-unpeel' into maint X-Git-Tag: v1.8.5.5~2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5032098614b6f68258d1f5d13615b9dcbf25f040;p=git Merge branch 'jc/revision-range-unpeel' into maint "git log --left-right A...B" lost the "leftness" of commits reachable from A when A is a tag as a side effect of a recent bugfix. This is a regression in 1.8.4.x series. * jc/revision-range-unpeel: revision: propagate flag bits from tags to pointees revision: mark contents of an uninteresting tree uninteresting --- 5032098614b6f68258d1f5d13615b9dcbf25f040 diff --cc revision.c index a8adb3fc88,aec03332ca..7afedc50fc --- a/revision.c +++ b/revision.c @@@ -139,9 -128,23 +134,21 @@@ static void mark_tree_contents_unintere * We don't care about the tree any more * after it has been marked uninteresting. */ - free(tree->buffer); - tree->buffer = NULL; - tree->object.parsed = 0; + free_tree_buffer(tree); } + void mark_tree_uninteresting(struct tree *tree) + { + struct object *obj = &tree->object; + + if (!tree) + return; + if (obj->flags & UNINTERESTING) + return; + obj->flags |= UNINTERESTING; + mark_tree_contents_uninteresting(tree); + } + void mark_parents_uninteresting(struct commit *commit) { struct commit_list *parents = NULL, *l;