tag: use skip_prefix instead of magic numbers

We can make the parsing of the --sort parameter a bit more
readable by having skip_prefix keep our pointer up to date.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff King 2014-07-10 00:07:32 -04:00 коммит произвёл Junio C Hamano
Родитель 67a31f6128
Коммит ce85604468
1 изменённых файлов: 5 добавлений и 9 удалений

Просмотреть файл

@ -524,18 +524,14 @@ static int parse_opt_sort(const struct option *opt, const char *arg, int unset)
int *sort = opt->value;
int flags = 0;
if (*arg == '-') {
if (skip_prefix(arg, "-", &arg))
flags |= REVERSE_SORT;
arg++;
}
if (starts_with(arg, "version:")) {
if (skip_prefix(arg, "version:", &arg) || skip_prefix(arg, "v:", &arg))
*sort = VERCMP_SORT;
arg += 8;
} else if (starts_with(arg, "v:")) {
*sort = VERCMP_SORT;
arg += 2;
} else
else
*sort = STRCMP_SORT;
if (strcmp(arg, "refname"))
die(_("unsupported sort specification %s"), arg);
*sort |= flags;