parse_timestamp(): specify explicitly where we parse timestamps
Currently, Git's source code represents all timestamps as `unsigned long`. In preparation for using a more appropriate data type, let's introduce a symbol `parse_timestamp` (currently being defined to `strtoul`) where appropriate, so that we can later easily switch to, say, use `strtoull()` instead. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
efac8ac84b
commit
1aeb7e756c
6
date.c
6
date.c
@ -510,7 +510,7 @@ static int match_digit(const char *date, struct tm *tm, int *offset, int *tm_gmt
|
||||
char *end;
|
||||
unsigned long num;
|
||||
|
||||
num = strtoul(date, &end, 10);
|
||||
num = parse_timestamp(date, &end, 10);
|
||||
|
||||
/*
|
||||
* Seconds since 1970? We trigger on that for any numbers with
|
||||
@ -658,7 +658,7 @@ static int match_object_header_date(const char *date, unsigned long *timestamp,
|
||||
|
||||
if (*date < '0' || '9' < *date)
|
||||
return -1;
|
||||
stamp = strtoul(date, &end, 10);
|
||||
stamp = parse_timestamp(date, &end, 10);
|
||||
if (*end != ' ' || stamp == ULONG_MAX || (end[1] != '+' && end[1] != '-'))
|
||||
return -1;
|
||||
date = end + 2;
|
||||
@ -1066,7 +1066,7 @@ static const char *approxidate_digit(const char *date, struct tm *tm, int *num,
|
||||
time_t now)
|
||||
{
|
||||
char *end;
|
||||
unsigned long number = strtoul(date, &end, 10);
|
||||
unsigned long number = parse_timestamp(date, &end, 10);
|
||||
|
||||
switch (*end) {
|
||||
case ':':
|
||||
|
Reference in New Issue
Block a user