get_merge_bases(): always clean-up object flags
authorJunio C Hamano <gitster@pobox.com>
Thu, 30 Oct 2014 19:20:44 +0000 (12:20 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 30 Oct 2014 19:51:10 +0000 (12:51 -0700)
commit2ce406ccb85c4546b6d19309a6101b37c7bd952e
treeed00f07eab627dc4217ac76e38a652201f99aac2
parentd76c9e95b435b660f8f1b3e01d3c2f934e2ec441
get_merge_bases(): always clean-up object flags

The callers of get_merge_bases() can choose to leave object flags
used during the merge-base traversal by passing cleanup=0 as a
parameter, but in practice a very few callers can afford to do so
(namely, "git merge-base"), as they need to compute merge base in
preparation for other processing of their own and they need to see
the object without contaminate flags.

Change the function signature of get_merge_bases_many() and
get_merge_bases() to drop the cleanup parameter, so that the
majority of the callers do not have to say ", 1" at the end.

Give a new get_merge_bases_many_dirty() API to support only a few
callers that know they do not need to spend cycles cleaning up the
object flags.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
bisect.c
builtin/merge-base.c
builtin/merge.c
builtin/rev-parse.c
commit.c
commit.h
merge-recursive.c
notes-merge.c
revision.c
sha1_name.c
submodule.c