changeset 9383:2547ef419123 v7.4.1973

commit https://github.com/vim/vim/commit/4c5717ed8a81f5ae9dfe4f38b17a61fc8421054b Author: Bram Moolenaar <Bram@vim.org> Date: Fri Jul 1 15:39:40 2016 +0200 patch 7.4.1973 Problem: On MS-Windows the package directory may be added at the end because of forward/backward slash differences. (Matthew Desjardins) Solution: Ignore slash differences.
author Christian Brabandt <cb@256bit.org>
date Fri, 01 Jul 2016 15:45:07 +0200
parents eb47189e7dd7
children f70535d8eaa2
files src/ex_cmds2.c src/version.c
diffstat 2 files changed, 17 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/ex_cmds2.c
+++ b/src/ex_cmds2.c
@@ -3349,6 +3349,7 @@ add_pack_plugin(char_u *fname, void *coo
     char_u  *afterdir;
     size_t  afterlen = 0;
     char_u  *ffname = fix_fname(fname);
+    int	    fname_len;
 
     if (ffname == NULL)
 	return;
@@ -3369,7 +3370,20 @@ add_pack_plugin(char_u *fname, void *coo
 	 * find the part up to "pack" in 'runtimepath' */
 	c = *p4;
 	*p4 = NUL;
-	insp = (char_u *)strstr((char *)p_rtp, (char *)ffname);
+
+	/* Find "ffname" in "p_rtp", ignoring '/' vs '\' differences. */
+	fname_len = STRLEN(ffname);
+	insp = p_rtp;
+	for (;;)
+	{
+	    if (vim_fnamencmp(insp, ffname, fname_len) == 0)
+		break;
+	    insp = vim_strchr(insp, ',');
+	    if (insp == NULL)
+		break;
+	    ++insp;
+	}
+
 	if (insp == NULL)
 	    /* not found, append at the end */
 	    insp = p_rtp + STRLEN(p_rtp);
--- a/src/version.c
+++ b/src/version.c
@@ -754,6 +754,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1973,
+/**/
     1972,
 /**/
     1971,