changeset 3505:6c318419e331 v7.3.515

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.
author Bram Moolenaar <bram@vim.org>
date Mon, 30 Apr 2012 21:09:43 +0200
parents 17d0de2b43a5
children 273fbf501965
files src/misc1.c src/version.c
diffstat 2 files changed, 9 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- 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)
--- 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,