diff options
author | Nguyễn Thái Ngọc Duy <pclouds@gmail.com> | 2013-02-12 02:17:38 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-02-12 11:29:56 -0800 |
commit | 5289c56a72efc6e5e4409c7a3802fc54aea09340 (patch) | |
tree | 7268d1b33d59c758941e12d477a56e57978b1d04 /log-tree.c | |
parent | t4014: more tests about appending s-o-b lines (diff) | |
download | tgif-5289c56a72efc6e5e4409c7a3802fc54aea09340.tar.xz |
format-patch: update append_signoff prototype
This is a preparation step for merging with append_signoff from
sequencer.c
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Brandon Casey <bcasey@nvidia.com>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'log-tree.c')
-rw-r--r-- | log-tree.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/log-tree.c b/log-tree.c index 4f86defe32..e3044a3e94 100644 --- a/log-tree.c +++ b/log-tree.c @@ -10,6 +10,8 @@ #include "color.h" #include "gpg-interface.h" +#define APPEND_SIGNOFF_DEDUP (1u <<0) + struct decoration name_decoration = { "object names" }; enum decoration_type { @@ -253,9 +255,12 @@ static int detect_any_signoff(char *letter, int size) return seen_head && seen_name; } -static void append_signoff(struct strbuf *sb, const char *signoff) +static void append_signoff(struct strbuf *sb, int ignore_footer, unsigned flag) { + unsigned no_dup_sob = flag & APPEND_SIGNOFF_DEDUP; static const char signed_off_by[] = "Signed-off-by: "; + char *signoff = xstrdup(fmt_name(getenv("GIT_COMMITTER_NAME"), + getenv("GIT_COMMITTER_EMAIL"))); size_t signoff_len = strlen(signoff); int has_signoff = 0; char *cp; @@ -275,6 +280,7 @@ static void append_signoff(struct strbuf *sb, const char *signoff) if (!isspace(cp[signoff_len])) continue; /* we already have him */ + free(signoff); return; } @@ -287,6 +293,7 @@ static void append_signoff(struct strbuf *sb, const char *signoff) strbuf_addstr(sb, signed_off_by); strbuf_add(sb, signoff, signoff_len); strbuf_addch(sb, '\n'); + free(signoff); } static unsigned int digits_in_number(unsigned int number) @@ -662,8 +669,10 @@ void show_log(struct rev_info *opt) /* * And then the pretty-printed message itself */ - if (ctx.need_8bit_cte >= 0) - ctx.need_8bit_cte = has_non_ascii(opt->add_signoff); + if (ctx.need_8bit_cte >= 0 && opt->add_signoff) + ctx.need_8bit_cte = + has_non_ascii(fmt_name(getenv("GIT_COMMITTER_NAME"), + getenv("GIT_COMMITTER_EMAIL"))); ctx.date_mode = opt->date_mode; ctx.date_mode_explicit = opt->date_mode_explicit; ctx.abbrev = opt->diffopt.abbrev; @@ -674,7 +683,7 @@ void show_log(struct rev_info *opt) pretty_print_commit(&ctx, commit, &msgbuf); if (opt->add_signoff) - append_signoff(&msgbuf, opt->add_signoff); + append_signoff(&msgbuf, 0, APPEND_SIGNOFF_DEDUP); if ((ctx.fmt != CMIT_FMT_USERFORMAT) && ctx.notes_message && *ctx.notes_message) { |