Thread (3 messages) flat view 3 messages, 3 authors, 2016-06-15

Re: [PATCH] for-each-ref: add split message parts to %(contents:*).

From: Jeff King <hidden>
Date: 2016-06-15 22:51:57

On Wed, Aug 31, 2011 at 03:54:35PM -0700, Junio C Hamano wrote:
quoted
+The complete message in a commit and tag object is `contents`.
+Its first line is `contents:subject`, the remaining lines
+are `contents:body` and the optional GPG signature
+is `contents:signature`.
To match the parsing of commit objects, I would prefer to see "subject" to
mean "the first paragraph" (usually the first line alone but that is
purely from convention), but that probably is a separate topic.
Good idea. I suspect pretty.c:format_subject can be reused here.
To paraphrase the last part of your sentence, if a tag is merely annotated
and not signed, contents:signature would be empty (I am just making sure
that I am reading the description correctly).
That is what I checked for in the tests I added.
quoted
 	while (*buf == '\n')
 		buf++; /* skip blank between subject and body */
 	*body = buf;
+	*signature = buf + parse_signature(buf, strlen(buf));
If there is no signature, parse_signature() would return (size_t) 0, no?
No, it returns strlen(buf) in that case, making signature the empty
string. It would perhaps better be called find_signature_in_body(),
since it is actually about parsing the rest of the body until we get to
the signature.

-Peff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help