diff options
authorNguyễn Thái Ngọc Duy <>2014-01-24 13:40:34 (GMT)
committerJunio C Hamano <>2014-02-24 22:37:24 (GMT)
commit05b85022c9a76954a1a281a5dc5bcd32ad486b88 (patch)
parentae8d0824217bdf97c69ead49568cd03fc140627b (diff)
clean: replace match_pathspec() with dir_path_match()
This instance was left out when many match_pathspec() call sites that take input from dir_entry were converted to dir_path_match() because it passed a path with the trailing slash stripped out to match_pathspec() while the others did not. Stripping for all call sites back then would be a regression because match_pathspec() did not know how to match pathspec foo/ against _directory_ foo (the stripped version of path "foo/"). match_pathspec() knows how to do it now. And dir_path_match() strips the trailing slash also. Use the new function, because the stripping code is removed in the next patch. Signed-off-by: Nguyễn Thái Ngọc Duy <> Signed-off-by: Junio C Hamano <>
1 files changed, 1 insertions, 2 deletions
diff --git a/builtin/clean.c b/builtin/clean.c
index 4c9680a..5adb52d 100644
--- a/builtin/clean.c
+++ b/builtin/clean.c
@@ -961,8 +961,7 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
die_errno("Cannot lstat '%s'", ent->name);
if (
- matches = match_pathspec(&pathspec, ent->name,
- len, 0, NULL, 0);
+ matches = dir_path_match(ent, &pathspec, 0, NULL);
if (S_ISDIR(st.st_mode)) {
if (remove_directories || (matches == MATCHED_EXACTLY)) {