On Thu, Mar 09, 2017 at 03:52:09PM +0100, Ævar Arnfjörð Bjarmason wrote: > - filter->with_commit_tag_algo = 1; > + if ((filter->merge_commit + filter->with_commit + > filter->no_commit) > 1) > + filter->with_commit_tag_algo = 0; > + else > + filter->with_commit_tag_algo = 1; > filter_refs(&array, filter, FILTER_REFS_TAGS); > ref_array_sort(sorting, &array); > > I think I'll amend the tip of my WIP v2 to have something like that, > and then we can follow-up with making these cases where you supply > multiple options faster. Yeah, that's another option. I think you may find that it's unbearably slow if you have a lot of tags. > > Looking at this, I'm pretty sure that using "--contains" with "--merged" > > has similar problems, as they both use the UNINTERESTING bit. So even > > without your patch, there is a lurking bug. > > I'm currently running this: > https://gist.github.com/avar/45cf288ce7cdc43e7395c6cbf9a98d68 Cute. I'll be curious if it turns up anything. -Peff