diff options
author | Jeff King <peff@peff.net> | 2018-08-22 20:49:56 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-08-23 10:08:51 -0700 |
commit | 1688c9a4894df517241026c7a3848bdc84607986 (patch) | |
tree | caef7f87bffe250f260ec28a34bc7db0da87e078 /trailer.c | |
parent | c188668e387509565237a865a1c63e890f6bbcd7 (diff) | |
download | git-1688c9a4894df517241026c7a3848bdc84607986.tar.gz |
interpret-trailers: allow suppressing "---" divider
Even with the newly-tightened "---" parser, it's still
possible for a commit message to trigger a false positive if
it contains something like "--- foo". If the caller knows
that it has only a single commit message, it can now tell us
with the "--no-divider" option, eliminating any false
positives.
If we were designing this from scratch, I'd probably make
this the default. But we've advertised the "---" behavior in
the documentation since interpret-trailers has existed.
Since it's meant to be scripted, breaking that would be a
bad idea.
Note that the logic is in the underlying trailer.c code,
which is used elsewhere. The default there will keep the
current behavior, but many callers will benefit from setting
this new option. That's left for future patches.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'trailer.c')
-rw-r--r-- | trailer.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -1080,7 +1080,11 @@ void trailer_info_get(struct trailer_info *info, const char *str, ensure_configured(); - patch_start = find_patch_start(str); + if (opts->no_divider) + patch_start = strlen(str); + else + patch_start = find_patch_start(str); + trailer_end = find_trailer_end(str, patch_start); trailer_start = find_trailer_start(str, trailer_end); |