format-patch -n: make sorting easier by padding number

Now, when format-patch outputs more than 9 patches, the numbers
are padded accordingly. Example:

	[PATCH 009/167] The 9th patch of a series of 167

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Johannes Schindelin 2007-02-09 01:43:54 +01:00 committed by Junio C Hamano
parent 4e244cbc5c
commit e00de24b10

View File

@ -102,6 +102,16 @@ static int append_signoff(char *buf, int buf_sz, int at, const char *signoff)
return at;
}
static unsigned int digits_in_number(unsigned int number)
{
unsigned int i = 10, result = 1;
while (i <= number) {
i *= 10;
result++;
}
return result;
}
void show_log(struct rev_info *opt, const char *sep)
{
static char this_header[16384];
@ -155,7 +165,8 @@ void show_log(struct rev_info *opt, const char *sep)
if (opt->total > 0) {
static char buffer[64];
snprintf(buffer, sizeof(buffer),
"Subject: [PATCH %d/%d] ",
"Subject: [PATCH %0*d/%d] ",
digits_in_number(opt->total),
opt->nr, opt->total);
subject = buffer;
} else if (opt->total == 0)