diff options
author | Junio C Hamano <gitster@pobox.com> | 2019-01-15 02:29:28 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-01-15 02:29:28 +0300 |
commit | d6f05a435f9c89f8c9860c7af692942768d81584 (patch) | |
tree | 7b43bdb292f9cda801778647a67ddc2662504067 /archive.c | |
parent | c333fe73682b182d6872f9e5b454c2899c6203ab (diff) | |
parent | 5a0b97b34c51eaddf39624857f1ac0e7df4ca2e3 (diff) |
Merge branch 'nd/attr-pathspec-in-tree-walk'
The traversal over tree objects has learned to honor
":(attr:label)" pathspec match, which has been implemented only for
enumerating paths on the filesystem.
* nd/attr-pathspec-in-tree-walk:
tree-walk: support :(attr) matching
dir.c: move, rename and export match_attrs()
pathspec.h: clean up "extern" in function declarations
tree-walk.c: make tree_entry_interesting() take an index
tree.c: make read_tree*() take 'struct repository *'
Diffstat (limited to 'archive.c')
-rw-r--r-- | archive.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -285,7 +285,8 @@ int write_archive_entries(struct archiver_args *args, git_attr_set_direction(GIT_ATTR_INDEX); } - err = read_tree_recursive(args->tree, "", 0, 0, &args->pathspec, + err = read_tree_recursive(args->repo, args->tree, "", + 0, 0, &args->pathspec, queue_or_write_archive_entry, &context); if (err == READ_TREE_RECURSIVE) @@ -346,7 +347,8 @@ static int path_exists(struct archiver_args *args, const char *path) ctx.args = args; parse_pathspec(&ctx.pathspec, 0, 0, "", paths); ctx.pathspec.recursive = 1; - ret = read_tree_recursive(args->tree, "", 0, 0, &ctx.pathspec, + ret = read_tree_recursive(args->repo, args->tree, "", + 0, 0, &ctx.pathspec, reject_entry, &ctx); clear_pathspec(&ctx.pathspec); return ret != 0; |