summaryrefslogtreecommitdiff
path: root/read-cache.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2014-02-27 14:01:15 -0800
committerJunio C Hamano <gitster@pobox.com>2014-02-27 14:01:15 -0800
commitcbaeafc3251d08b479c5eb735444bb6ad6210c93 (patch)
tree5513bd0aab1246167f737639e72022c0de64b1a6 /read-cache.c
parent156d6ed9221ff38c4cd3bfcfc6778e31c104fd9b (diff)
parent2e70c01799bf663cc1fa5f6e37e025000ffdc0b0 (diff)
downloadgit-cbaeafc3251d08b479c5eb735444bb6ad6210c93.tar.gz
Merge branch 'nd/submodule-pathspec-ending-with-slash'
Allow "git cmd path/", when the 'path' is where a submodule is bound to the top-level working tree, to match 'path', despite the extra and unnecessary trailing slash. * nd/submodule-pathspec-ending-with-slash: clean: use cache_name_is_other() clean: replace match_pathspec() with dir_path_match() pathspec: pass directory indicator to match_pathspec_item() match_pathspec: match pathspec "foo/" against directory "foo" dir.c: prepare match_pathspec_item for taking more flags pathspec: rename match_pathspec_depth() to match_pathspec() pathspec: convert some match_pathspec_depth() to dir_path_match() pathspec: convert some match_pathspec_depth() to ce_path_match()
Diffstat (limited to 'read-cache.c')
-rw-r--r--read-cache.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/read-cache.c b/read-cache.c
index 71f64f3a6e..29c1047eeb 100644
--- a/read-cache.c
+++ b/read-cache.c
@@ -730,11 +730,6 @@ int ce_same_name(const struct cache_entry *a, const struct cache_entry *b)
return ce_namelen(b) == len && !memcmp(a->name, b->name, len);
}
-int ce_path_match(const struct cache_entry *ce, const struct pathspec *pathspec)
-{
- return match_pathspec_depth(pathspec, ce->name, ce_namelen(ce), 0, NULL);
-}
-
/*
* We fundamentally don't like some paths: we don't want
* dot or dot-dot anywhere, and for obvious reasons don't
@@ -1157,8 +1152,7 @@ int refresh_index(struct index_state *istate, unsigned int flags,
if (ignore_submodules && S_ISGITLINK(ce->ce_mode))
continue;
- if (pathspec &&
- !match_pathspec_depth(pathspec, ce->name, ce_namelen(ce), 0, seen))
+ if (pathspec && !ce_path_match(ce, pathspec, seen))
filtered = 1;
if (ce_stage(ce)) {