From 8b8a53744f60274ef07e3a2a51995129c8d42f38 Mon Sep 17 00:00:00 2001 From: Jeff King Date: Thu, 26 May 2011 18:27:24 -0400 Subject: [PATCH] pretty: add pp_commit_easy function for simple callers Many callers don't actually care about the pretty print context at all; let's just give them a simple way of pretty-printing a commit without having to create a context struct. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- builtin/branch.c | 4 +--- builtin/checkout.c | 3 +-- builtin/log.c | 4 +--- builtin/shortlog.c | 3 +-- builtin/show-branch.c | 3 +-- commit.h | 2 ++ pretty.c | 7 +++++++ 7 files changed, 14 insertions(+), 12 deletions(-) diff --git a/builtin/branch.c b/builtin/branch.c index 9e546e4a83..d8f15221ed 100644 --- a/builtin/branch.c +++ b/builtin/branch.c @@ -436,9 +436,7 @@ static void print_ref_item(struct ref_item *item, int maxwidth, int verbose, commit = item->commit; if (commit && !parse_commit(commit)) { - struct pretty_print_context ctx = {0}; - pretty_print_commit(CMIT_FMT_ONELINE, commit, - &subject, &ctx); + pp_commit_easy(CMIT_FMT_ONELINE, commit, &subject); sub = subject.buf; } diff --git a/builtin/checkout.c b/builtin/checkout.c index 757f9a08dd..c1759dc3a4 100644 --- a/builtin/checkout.c +++ b/builtin/checkout.c @@ -300,9 +300,8 @@ static void show_local_changes(struct object *head, struct diff_options *opts) static void describe_detached_head(char *msg, struct commit *commit) { struct strbuf sb = STRBUF_INIT; - struct pretty_print_context ctx = {0}; parse_commit(commit); - pretty_print_commit(CMIT_FMT_ONELINE, commit, &sb, &ctx); + pp_commit_easy(CMIT_FMT_ONELINE, commit, &sb); fprintf(stderr, "%s %s... %s\n", msg, find_unique_abbrev(commit->object.sha1, DEFAULT_ABBREV), sb.buf); strbuf_release(&sb); diff --git a/builtin/log.c b/builtin/log.c index d8c6c28d2f..cedfdb6d42 100644 --- a/builtin/log.c +++ b/builtin/log.c @@ -1439,9 +1439,7 @@ int cmd_cherry(int argc, const char **argv, const char *prefix) if (verbose) { struct strbuf buf = STRBUF_INIT; - struct pretty_print_context ctx = {0}; - pretty_print_commit(CMIT_FMT_ONELINE, commit, - &buf, &ctx); + pp_commit_easy(CMIT_FMT_ONELINE, commit, &buf); printf("%c %s %s\n", sign, find_unique_abbrev(commit->object.sha1, abbrev), buf.buf); diff --git a/builtin/shortlog.c b/builtin/shortlog.c index 1a21e4b053..90877b5fe2 100644 --- a/builtin/shortlog.c +++ b/builtin/shortlog.c @@ -141,9 +141,8 @@ void shortlog_add_commit(struct shortlog *log, struct commit *commit) const char *author = NULL, *buffer; struct strbuf buf = STRBUF_INIT; struct strbuf ufbuf = STRBUF_INIT; - struct pretty_print_context ctx = {0}; - pretty_print_commit(CMIT_FMT_RAW, commit, &buf, &ctx); + pp_commit_easy(CMIT_FMT_RAW, commit, &buf); buffer = buf.buf; while (*buffer && *buffer != '\n') { const char *eol = strchr(buffer, '\n'); diff --git a/builtin/show-branch.c b/builtin/show-branch.c index da695815e2..a5fc2aa884 100644 --- a/builtin/show-branch.c +++ b/builtin/show-branch.c @@ -293,8 +293,7 @@ static void show_one_commit(struct commit *commit, int no_name) struct commit_name *name = commit->util; if (commit->object.parsed) { - struct pretty_print_context ctx = {0}; - pretty_print_commit(CMIT_FMT_ONELINE, commit, &pretty, &ctx); + pp_commit_easy(CMIT_FMT_ONELINE, commit, &pretty); pretty_str = pretty.buf; } if (!prefixcmp(pretty_str, "[PATCH] ")) diff --git a/commit.h b/commit.h index eb6c5af1f6..3e733be1ac 100644 --- a/commit.h +++ b/commit.h @@ -98,6 +98,8 @@ extern void format_commit_message(const struct commit *commit, extern void pretty_print_commit(enum cmit_fmt fmt, const struct commit *commit, struct strbuf *sb, const struct pretty_print_context *context); +extern void pp_commit_easy(enum cmit_fmt fmt, const struct commit *commit, + struct strbuf *sb); void pp_user_info(const char *what, enum cmit_fmt fmt, struct strbuf *sb, const char *line, enum date_mode dmode, const char *encoding); diff --git a/pretty.c b/pretty.c index 305ff85d74..75a9a416a4 100644 --- a/pretty.c +++ b/pretty.c @@ -1288,3 +1288,10 @@ void pretty_print_commit(enum cmit_fmt fmt, const struct commit *commit, free(reencoded); } + +void pp_commit_easy(enum cmit_fmt fmt, const struct commit *commit, + struct strbuf *sb) +{ + struct pretty_print_context pp = {0}; + pretty_print_commit(fmt, commit, sb, &pp); +} -- 2.11.4.GIT