diff src/misc1.c @ 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 27f6a22ff88e
children f52d2ea0f81c
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)