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 <[email protected]>
---
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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html