# HG changeset patch # User Bram Moolenaar # Date 1335812983 -7200 # Node ID 6c318419e3310fb9658ee6ead6b4ea33def8cb6d # Parent 17d0de2b43a5c9df13ea35f20a8fe2d790414c21 updated for version 7.3.515 Problem: 'wildignorecase' only applies to the last part of the path. Solution: Also ignore case for letters earlier in the path. diff --git a/src/misc1.c b/src/misc1.c --- a/src/misc1.c +++ b/src/misc1.c @@ -9461,6 +9461,7 @@ unix_expandpath(gap, path, wildoff, flag /* * Find the first part in the path name that contains a wildcard. + * When EW_ICASE is set every letter is considered to be a wildcard. * Copy it into "buf", including the preceding characters. */ p = buf; @@ -9480,7 +9481,12 @@ unix_expandpath(gap, path, wildoff, flag s = p + 1; } else if (path_end >= path + wildoff - && vim_strchr((char_u *)"*?[{~$", *path_end) != NULL) + && (vim_strchr((char_u *)"*?[{~$", *path_end) != NULL +#ifndef CASE_INSENSITIVE_FILENAME + || ((flags & EW_ICASE) + && isalpha(PTR2CHAR(path_end))) +#endif + )) e = p; #ifdef FEAT_MBYTE if (has_mbyte) diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -715,6 +715,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 515, +/**/ 514, /**/ 513,