Christian Couder <christian.couder@xxxxxxxxx> writes: >> Oops, I think Phillip and Christian also pointed in the last revision >> to look for alternatives to make it easy. I mistook that point and >> forgot to look at it. > > Yes, please take a look at find_commit_subject() in "commit.c". Yeah, it uses pretty.c::skip_blank_lines(), which is easy to use. so something like a loop that calls skip_blank_lines() to see if it returns a differnt result (which means the argument we fed it was at the beginning of a blank line, which is what this helper wants to return), and otherwise we advance by one line with strchrnul() and retry, perhaps. while (*body) { char *next = skip_blank_lines(body); if (next != body) break; /* found a blank line */ body = strchrnul(body, '\n'); if (*body) body++; } /* body has the answer */