diff options
author | Andy Parkins <andyparkins@gmail.com> | 2007-09-28 15:17:31 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2007-09-29 20:31:59 -0700 |
commit | 856665f827c31ace3f19e672f8911f7f15f2a0e2 (patch) | |
tree | 879ca96783e856dc12fc37b8742c9a8b2bd9c44a /revision.c | |
parent | 2a858ee95134926a0ccccb9a78db06bcb0bd65d0 (diff) | |
download | git-856665f827c31ace3f19e672f8911f7f15f2a0e2.tar.gz |
parse_date_format(): convert a format name to an enum date_mode
Factor out the code to parse --date=<format> parameter to revision
walkers into a separate function, parse_date_format(). This function
is passed a string and converts it to an enum date_format:
- "relative" => DATE_RELATIVE
- "iso8601" or "iso" => DATE_ISO8601
- "rfc2822" => DATE_RFC2822
- "short" => DATE_SHORT
- "local" => DATE_LOCAL
- "default" => DATE_NORMAL
In the event that none of these strings is found, the function die()s.
Signed-off-by: Andy Parkins <andyparkins@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'revision.c')
-rw-r--r-- | revision.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/revision.c b/revision.c index 658471385c..5d294be308 100644 --- a/revision.c +++ b/revision.c @@ -1134,22 +1134,7 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, const ch continue; } if (!strncmp(arg, "--date=", 7)) { - if (!strcmp(arg + 7, "relative")) - revs->date_mode = DATE_RELATIVE; - else if (!strcmp(arg + 7, "iso8601") || - !strcmp(arg + 7, "iso")) - revs->date_mode = DATE_ISO8601; - else if (!strcmp(arg + 7, "rfc2822") || - !strcmp(arg + 7, "rfc")) - revs->date_mode = DATE_RFC2822; - else if (!strcmp(arg + 7, "short")) - revs->date_mode = DATE_SHORT; - else if (!strcmp(arg + 7, "local")) - revs->date_mode = DATE_LOCAL; - else if (!strcmp(arg + 7, "default")) - revs->date_mode = DATE_NORMAL; - else - die("unknown date format %s", arg); + revs->date_mode = parse_date_format(arg + 7); continue; } if (!strcmp(arg, "--log-size")) { |