diff options
author | Brandon Williams <bmwill@google.com> | 2017-03-13 11:23:21 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-03-13 15:28:54 -0700 |
commit | b0db70465246bb8309d3d12c9bc34ac3f0c1e203 (patch) | |
tree | a82cfca2e400ddd21f22cec61e2d664462e4a38f /attr.c | |
parent | 625568cd8813bf32b2172eaf59e45e9da5978ce3 (diff) | |
download | git-b0db70465246bb8309d3d12c9bc34ac3f0c1e203.tar.gz |
pathspec: allow querying for attributes
The pathspec mechanism is extended via the new
":(attr:eol=input)pattern/to/match" syntax to filter paths so that it
requires paths to not just match the given pattern but also have the
specified attrs attached for them to be chosen.
Based on a patch by Stefan Beller <sbeller@google.com>
Signed-off-by: Brandon Williams <bmwill@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'attr.c')
-rw-r--r-- | attr.c | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -603,6 +603,23 @@ struct attr_check *attr_check_initl(const char *one, ...) return check; } +struct attr_check *attr_check_dup(const struct attr_check *check) +{ + struct attr_check *ret; + + if (!check) + return NULL; + + ret = attr_check_alloc(); + + ret->nr = check->nr; + ret->alloc = check->alloc; + ALLOC_ARRAY(ret->items, ret->nr); + COPY_ARRAY(ret->items, check->items, ret->nr); + + return ret; +} + struct attr_check_item *attr_check_append(struct attr_check *check, const struct git_attr *attr) { |