Re: [RFC PATCH] git log: support "auto" decorations
flat view
From: Junio C Hamano <hidden>
Date: 2016-06-15 23:01:26
Jeff King [off-list ref] writes:
On Thu, May 29, 2014 at 09:54:10PM -0700, Linus Torvalds wrote:quoted
That said, part of it is just that show-signature is so suboptimal performance-wise, re-parsing the commit buffer for each commit when "show_signature" is set. That's just crazy, we've already parsed the commit text, we already *could* know if it has a signature or not, and skip it if it doesn't. That would require one of the flag bits in the object, though, or something, so it's probably not worth doing.Wow, it's really quite bad. Not only do we spend time on commits that we could otherwise know do not have signatures, but we actually pull the buffer from disk, even though we generally have it saved as commit->buffer.
The one for the signature on the commit itself is me being lazy and defensive; I did not want to have to worry about people mucking with what is in commit->buffer for whatever reason (e.g. re-encode in different charset, etc.) and then asking the signature validated. The other one for the merge-tag is me just being lazy, as it is unlikely to be corrupt by any reasonable kinds of mucking with commit->buffer on a merge.