diff options
Diffstat (limited to 'test-date.c')
-rw-r--r-- | test-date.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/test-date.c b/test-date.c index a9e705f79a..10afaabbfa 100644 --- a/test-date.c +++ b/test-date.c @@ -7,26 +7,30 @@ static const char *usage_msg = "\n" static void show_dates(char **argv, struct timeval *now) { - char buf[128]; + struct strbuf buf = STRBUF_INIT; for (; *argv; argv++) { time_t t = atoi(*argv); - show_date_relative(t, 0, now, buf, sizeof(buf)); - printf("%s -> %s\n", *argv, buf); + show_date_relative(t, 0, now, &buf); + printf("%s -> %s\n", *argv, buf.buf); } + strbuf_release(&buf); } static void parse_dates(char **argv, struct timeval *now) { for (; *argv; argv++) { char result[100]; - time_t t; + unsigned long t; + int tz; result[0] = 0; parse_date(*argv, result, sizeof(result)); - t = strtoul(result, NULL, 0); - printf("%s -> %s\n", *argv, - t ? show_date(t, 0, DATE_ISO8601) : "bad"); + if (sscanf(result, "%lu %d", &t, &tz) == 2) + printf("%s -> %s\n", + *argv, show_date(t, tz, DATE_ISO8601)); + else + printf("%s -> bad\n", *argv); } } |