This reduces "git status" user time by a little bit. This is the sorted results of 10 consecutive runs of "git ls-files --exclude-standard -o" on webkit.git, compiled with gcc -O2: before after user 0m0.607s 0m0.554s user 0m0.613s 0m0.564s user 0m0.613s 0m0.571s user 0m0.621s 0m0.576s user 0m0.621s 0m0.578s user 0m0.622s 0m0.579s user 0m0.624s 0m0.583s user 0m0.626s 0m0.584s user 0m0.628s 0m0.586s user 0m0.638s 0m0.592s Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> --- dir.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dir.c b/dir.c index 57394e4..b3cd66c 100644 --- a/dir.c +++ b/dir.c @@ -662,8 +662,8 @@ int match_pathname(const char *pathname, int pathlen, * may not end with a trailing slash though. */ if (pathlen < baselen + 1 || - (baselen && pathname[baselen] != '/') || - strncmp_icase(pathname, base, baselen)) + (baselen && (pathname[baselen] != '/' || + strncmp_icase(pathname, base, baselen)))) return 0; namelen = baselen ? pathlen - baselen - 1 : pathlen; -- 1.8.1.2.536.gf441e6d -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html