Signed-off-by: Tom Grennan <tmgrennan@xxxxxxxxx> --- builtin/for-each-ref.c | 23 +++-------------------- 1 files changed, 3 insertions(+), 20 deletions(-) diff --git a/builtin/for-each-ref.c b/builtin/for-each-ref.c index b01d76a..2c9cc47 100644 --- a/builtin/for-each-ref.c +++ b/builtin/for-each-ref.c @@ -781,25 +781,8 @@ static int grab_single_ref(const char *refname, const unsigned char *sha1, int f struct refinfo *ref; int cnt; - if (*cb->grab_pattern) { - const char **pattern; - int namelen = strlen(refname); - for (pattern = cb->grab_pattern; *pattern; pattern++) { - const char *p = *pattern; - int plen = strlen(p); - - if ((plen <= namelen) && - !strncmp(refname, p, plen) && - (refname[plen] == '\0' || - refname[plen] == '/' || - p[plen-1] == '/')) - break; - if (!fnmatch(p, refname, FNM_PATHNAME)) - break; - } - if (!*pattern) - return 0; - } + if (!refname_match_patterns(cb->grab_pattern, refname)) + return 0; /* * We do not open the object yet; sort may only need refname @@ -974,7 +957,7 @@ static int opt_parse_sort(const struct option *opt, const char *arg, int unset) } static char const * const for_each_ref_usage[] = { - "git for-each-ref [options] [<pattern>]", + "git for-each-ref [options] [[!]<pattern>...]", NULL }; -- 1.7.8 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html