Merge branch 'rs/maint-shortlog-foldline'

* rs/maint-shortlog-foldline:
  shortlog: handle multi-line subjects like log --pretty=oneline et. al. do
maint
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;