Skip to content

Commit

Permalink
Merge branch 'jk/pretty-empty-format'
Browse files Browse the repository at this point in the history
"git log --pretty/format=" with an empty format string did not mean
the more obvious "No output whatsoever" but "Use default format",
which was counterintuitive.

* jk/pretty-empty-format:
  pretty: make empty userformats truly empty
  pretty: treat "--format=" as an empty userformat
  revision: drop useless string offset when parsing "--pretty"
  • Loading branch information
Junio C Hamano committed Sep 2, 2014
2 parents 56f214e + b9c7d6e commit 44ceb79
Show file tree
Hide file tree
Showing 5 changed files with 14 additions and 6 deletions.
3 changes: 2 additions & 1 deletion combine-diff.c
Original file line number Diff line number Diff line change
Expand Up @@ -1407,7 +1407,8 @@ void diff_tree_combined(const unsigned char *sha1,
show_log(rev);

if (rev->verbose_header && opt->output_format &&
opt->output_format != DIFF_FORMAT_NO_OUTPUT)
opt->output_format != DIFF_FORMAT_NO_OUTPUT &&
!commit_format_is_empty(rev->commit_format))
printf("%s%c", diff_line_prefix(opt),
opt->line_termination);
}
Expand Down
1 change: 1 addition & 0 deletions commit.h
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,7 @@ extern void get_commit_format(const char *arg, struct rev_info *);
extern const char *format_subject(struct strbuf *sb, const char *msg,
const char *line_separator);
extern void userformat_find_requirements(const char *fmt, struct userformat_want *w);
extern int commit_format_is_empty(enum cmit_fmt);
extern void format_commit_message(const struct commit *commit,
const char *format, struct strbuf *sb,
const struct pretty_print_context *context);
Expand Down
5 changes: 3 additions & 2 deletions log-tree.c
Original file line number Diff line number Diff line change
Expand Up @@ -649,7 +649,7 @@ void show_log(struct rev_info *opt)
graph_show_commit_msg(opt->graph, &msgbuf);
else
fwrite(msgbuf.buf, sizeof(char), msgbuf.len, stdout);
if (opt->use_terminator) {
if (opt->use_terminator && !commit_format_is_empty(opt->commit_format)) {
if (!opt->missing_newline)
graph_show_padding(opt->graph);
putchar(opt->diffopt.line_termination);
Expand All @@ -676,7 +676,8 @@ int log_tree_diff_flush(struct rev_info *opt)
show_log(opt);
if ((opt->diffopt.output_format & ~DIFF_FORMAT_NO_OUTPUT) &&
opt->verbose_header &&
opt->commit_format != CMIT_FMT_ONELINE) {
opt->commit_format != CMIT_FMT_ONELINE &&
!commit_format_is_empty(opt->commit_format)) {
/*
* When showing a verbose header (i.e. log message),
* and not in --pretty=oneline format, we would want
Expand Down
9 changes: 7 additions & 2 deletions pretty.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,11 @@ static size_t commit_formats_len;
static size_t commit_formats_alloc;
static struct cmt_fmt_map *find_commit_format(const char *sought);

int commit_format_is_empty(enum cmit_fmt fmt)
{
return fmt == CMIT_FMT_USERFORMAT && !*user_format;
}

static void save_user_format(struct rev_info *rev, const char *cp, int is_tformat)
{
free(user_format);
Expand Down Expand Up @@ -146,7 +151,7 @@ void get_commit_format(const char *arg, struct rev_info *rev)
struct cmt_fmt_map *commit_format;

rev->use_terminator = 0;
if (!arg || !*arg) {
if (!arg) {
rev->commit_format = CMIT_FMT_DEFAULT;
return;
}
Expand All @@ -155,7 +160,7 @@ void get_commit_format(const char *arg, struct rev_info *rev)
return;
}

if (strchr(arg, '%')) {
if (!*arg || strchr(arg, '%')) {
save_user_format(rev, arg, 1);
return;
}
Expand Down
2 changes: 1 addition & 1 deletion revision.c
Original file line number Diff line number Diff line change
Expand Up @@ -1825,7 +1825,7 @@ static int handle_revision_opt(struct rev_info *revs, int argc, const char **arg
} else if (!strcmp(arg, "--pretty")) {
revs->verbose_header = 1;
revs->pretty_given = 1;
get_commit_format(arg+8, revs);
get_commit_format(NULL, revs);
} else if (starts_with(arg, "--pretty=") || starts_with(arg, "--format=")) {
/*
* Detached form ("--pretty X" as opposed to "--pretty=X")
Expand Down

0 comments on commit 44ceb79

Please sign in to comment.