Re: [PATCH] format-patch: dereference tags with --ignore-if-in-upstream
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jun 1, 2015, 17:58 UTC
- Message-ID
- <xmqq1thv71kv.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <xmqq6177728a.fsf@gitster.dls.corp.google.com>
Junio C Hamano <gitster@pobox.com> writes:
> How about doing it this way? We know and trust that existing > revision traversal machinery is doing the right thing, and it is > only that the clear_commit_marks() calls are botched.
Another alternative may be to allow any object to clear_commit_marks() and have the callee dereference as needed. After all, the revision walking machinery does such a dereferencing when leaving these marks that the function wants to clear, so it might make sense from that point of view.
A quick "git grep clear_commit_marks()" tells me that most of the codepaths do make sure the object is a commit when they cast their first argument to (struct commit *) when calling this function, but some of them do look suspicous.