aboutsummaryrefslogtreecommitdiff
path: root/builtin
diff options
context:
space:
mode:
authorNguyễn Thái Ngọc Duy <pclouds@gmail.com>2012-11-18 16:13:06 +0700
committerJunio C Hamano <gitster@pobox.com>2012-11-19 13:08:28 -0800
commit170260ae90cb6a0fec476e7d970e3ac3e81e98f5 (patch)
tree0c342d4b08c483cf1035c1945113a96ab8057f14 /builtin
parentf3828dc0669826660f5034a468913115675ff501 (diff)
downloadgit-170260ae90cb6a0fec476e7d970e3ac3e81e98f5.tar.gz
git-170260ae90cb6a0fec476e7d970e3ac3e81e98f5.tar.xz
pathspec: save the non-wildcard length part
We mark pathspec with wildcards with the field use_wildcard. We could do better by saving the length of the non-wildcard part, which can be used for optimizations such as f9f6e2c (exclude: do strcmp as much as possible before fnmatch - 2012-06-07). Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin')
-rw-r--r--builtin/ls-files.c2
-rw-r--r--builtin/ls-tree.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/builtin/ls-files.c b/builtin/ls-files.c
index b5434af0c..4a9ee690c 100644
--- a/builtin/ls-files.c
+++ b/builtin/ls-files.c
@@ -337,7 +337,7 @@ void overlay_tree_on_cache(const char *tree_name, const char *prefix)
matchbuf[0] = prefix;
matchbuf[1] = NULL;
init_pathspec(&pathspec, matchbuf);
- pathspec.items[0].use_wildcard = 0;
+ pathspec.items[0].nowildcard_len = pathspec.items[0].len;
} else
init_pathspec(&pathspec, NULL);
if (read_tree(tree, 1, &pathspec))
diff --git a/builtin/ls-tree.c b/builtin/ls-tree.c
index 235c17cc0..fb76e38d8 100644
--- a/builtin/ls-tree.c
+++ b/builtin/ls-tree.c
@@ -168,7 +168,7 @@ int cmd_ls_tree(int argc, const char **argv, const char *prefix)
init_pathspec(&pathspec, get_pathspec(prefix, argv + 1));
for (i = 0; i < pathspec.nr; i++)
- pathspec.items[i].use_wildcard = 0;
+ pathspec.items[i].nowildcard_len = pathspec.items[i].len;
pathspec.has_wildcard = 0;
tree = parse_tree_indirect(sha1);
if (!tree)