Merge branch 'rs/maint-shortlog-foldline'

* rs/maint-shortlog-foldline:
  shortlog: handle multi-line subjects like log --pretty=oneline et. al. do
This commit is contained in:
Junio C Hamano 2009-01-17 23:05:23 -08:00
commit b4147b3af2
2 changed files with 8 additions and 5 deletions

View file

@ -29,6 +29,9 @@ static int compare_by_number(const void *a1, const void *a2)
return -1;
}
const char *format_subject(struct strbuf *sb, const char *msg,
const char *line_separator);
static void insert_one_record(struct shortlog *log,
const char *author,
const char *oneline)
@ -40,6 +43,7 @@ static void insert_one_record(struct shortlog *log,
size_t len;
const char *eol;
const char *boemail, *eoemail;
struct strbuf subject = STRBUF_INIT;
boemail = strchr(author, '<');
if (!boemail)
@ -85,9 +89,8 @@ static void insert_one_record(struct shortlog *log,
while (*oneline && isspace(*oneline) && *oneline != '\n')
oneline++;
len = eol - oneline;
while (len && isspace(oneline[len-1]))
len--;
buffer = xmemdupz(oneline, len);
format_subject(&subject, oneline, " ");
buffer = strbuf_detach(&subject, NULL);
if (dot3) {
int dot3len = strlen(dot3);

View file

@ -486,8 +486,8 @@ static void parse_commit_header(struct format_commit_context *context)
context->commit_header_parsed = 1;
}
static const char *format_subject(struct strbuf *sb, const char *msg,
const char *line_separator)
const char *format_subject(struct strbuf *sb, const char *msg,
const char *line_separator)
{
int first = 1;