diff options
author | Nguyễn Thái Ngọc Duy <pclouds@gmail.com> | 2018-10-27 10:48:23 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-10-29 13:19:22 +0900 |
commit | e5bbe09e88545cd1a3bcf2b157f020f92e0b5def (patch) | |
tree | fb7c8380878bffd65861a94bf9e26151b9d331d3 /wildmatch.h | |
parent | 268fbcd172cdb306e8a3e7143cc16677c963d6cd (diff) |
wildmatch: change behavior of "foo**bar" in WM_PATHNAME mode
In WM_PATHNAME mode (or FNM_PATHNAME), '*' does not match '/' and '**' can but only in three patterns: - '**/' matches zero or more leading directories - '/**/' matches zero or more directories in between - '/**' matches zero or more trailing directories/files When '**' is present but not in one of these patterns, the current behavior is consider the pattern invalid and stop matching. In other words, 'foo**bar' never matches anything, whatever you throw at it. This behavior is arguably a bit confusing partly because we can't really tell the user their pattern is invalid so that they can fix it. So instead, tolerate it and make '**' act like two regular '*'s (which is essentially the same as a single asterisk). This behavior seems more predictable. Noticed-by: dana <dana@dana.is> 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 'wildmatch.h')
-rw-r--r-- | wildmatch.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/wildmatch.h b/wildmatch.h index b8c826aa68..5993696298 100644 --- a/wildmatch.h +++ b/wildmatch.h @@ -4,7 +4,6 @@ #define WM_CASEFOLD 1 #define WM_PATHNAME 2 -#define WM_ABORT_MALFORMED 2 #define WM_NOMATCH 1 #define WM_MATCH 0 #define WM_ABORT_ALL -1 |