summaryrefslogtreecommitdiff
path: root/ref-filter.c
diff options
context:
space:
mode:
authorAleksandr Makarov <aleksandr.o.makarov@gmail.com>2018-07-02 21:11:59 (GMT)
committerJunio C Hamano <gitster@pobox.com>2018-07-03 21:49:15 (GMT)
commit639ab5efa1ad79bd69abfd67bf28016db41c10d5 (patch)
tree697ec8fa0567121e3c65d5229148575fbb7936e7 /ref-filter.c
parentee0f3e22c61f73734f3caa6c3f5c7a224227ce38 (diff)
downloadgit-639ab5efa1ad79bd69abfd67bf28016db41c10d5.zip
git-639ab5efa1ad79bd69abfd67bf28016db41c10d5.tar.gz
git-639ab5efa1ad79bd69abfd67bf28016db41c10d5.tar.bz2
for-each-ref: consistently pass WM_IGNORECASE flag
The match_name_as_path() function learned to set WM_IGNORECASE in the "flags" field when the user passed --ignore-case. But it forgot to actually pass the flags to wildmatch()! As a result, the --ignore-case feature has been broken since it was added in 3bb16a8bf2 (tag, branch, for-each-ref: add --ignore-case for sorting and filtering, 2016-12-04). We didn't notice because we added tests only for git-branch and git-tag. Whereas git-for-each-ref has slightly different matching rules, and thus uses a different function (the related function match_pattern() does it correctly). Incidentally, this also caused clang's scan-build to complain about the code; the assignment to "flags" was dead code. Note that we can't flip the test in t6300 to expect_success yet. There's another bug, which will be dealt with in the next patch. Commit-message-by: Jeff King <peff@peff.net> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'ref-filter.c')
-rw-r--r--ref-filter.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ref-filter.c b/ref-filter.c
index 45fc562..c0e257c 100644
--- a/ref-filter.c
+++ b/ref-filter.c
@@ -1714,7 +1714,7 @@ static int match_name_as_path(const struct ref_filter *filter, const char *refna
refname[plen] == '/' ||
p[plen-1] == '/'))
return 1;
- if (!wildmatch(p, refname, WM_PATHNAME))
+ if (!wildmatch(p, refname, flags))
return 1;
}
return 0;