提交 e6efecc4 编写于 作者: N Nguyễn Thái Ngọc Duy 提交者: Junio C Hamano

dir.c: make last_exclude_matching_from_list() run til the end

The next patch adds some post processing to the result value before it's
returned to the caller. Keep all branches reach the end of the function,
so we can do it all in one place.
Signed-off-by: NNguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: NJunio C Hamano <gitster@pobox.com>
上级 ecad27cf
......@@ -752,6 +752,7 @@ static struct exclude *last_exclude_matching_from_list(const char *pathname,
int *dtype,
struct exclude_list *el)
{
struct exclude *exc = NULL; /* undecided */
int i;
if (!el->nr)
......@@ -773,18 +774,22 @@ static struct exclude *last_exclude_matching_from_list(const char *pathname,
if (match_basename(basename,
pathlen - (basename - pathname),
exclude, prefix, x->patternlen,
x->flags))
return x;
x->flags)) {
exc = x;
break;
}
continue;
}
assert(x->baselen == 0 || x->base[x->baselen - 1] == '/');
if (match_pathname(pathname, pathlen,
x->base, x->baselen ? x->baselen - 1 : 0,
exclude, prefix, x->patternlen, x->flags))
return x;
exclude, prefix, x->patternlen, x->flags)) {
exc = x;
break;
}
}
return NULL; /* undecided */
return exc;
}
/*
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册