changeset 5118:5569d11ef585 v7.3.1302

updated for version 7.3.1302 Problem: Test 17 fails on MS-Windows. Includes line break in file name everywhere. Solution: Fix 'fileformat'. Omit CR-LF from a line read from an included file.
author Bram Moolenaar <bram@vim.org>
date Wed, 03 Jul 2013 22:28:36 +0200
parents 75f4c48a0771
children 58686d48772e
files src/search.c src/testdir/test17.in src/testdir/test17.ok src/version.c
diffstat 4 files changed, 15 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/search.c
+++ b/src/search.c
@@ -4825,7 +4825,7 @@ find_pattern_in_path(ptr, dir, len, whol
 	    if (inc_opt != NULL && strstr((char *)inc_opt, "\\zs") != NULL)
 		/* Use text from '\zs' to '\ze' (or end) of 'include'. */
 		new_fname = find_file_name_in_path(incl_regmatch.startp[0],
-			      (int)(incl_regmatch.endp[0] - incl_regmatch.startp[0]),
+		       (int)(incl_regmatch.endp[0] - incl_regmatch.startp[0]),
 				 FNAME_EXP|FNAME_INCL|FNAME_REL, 1L, p_fname);
 	    else
 		/* Use text after match with 'include'. */
@@ -5352,7 +5352,15 @@ exit_matched:
 		depth_displayed = depth;
 	}
 	if (depth >= 0)		/* we could read the line */
+	{
 	    files[depth].lnum++;
+	    /* Remove any CR and LF from the line. */
+	    i = (int)STRLEN(line);
+	    if (i > 0 && line[i - 1] == '\n')
+		line[--i] = NUL;
+	    if (i > 0 && line[i - 1] == '\r')
+		line[--i] = NUL;
+	}
 	else if (!already)
 	{
 	    if (++lnum > end_lnum)
--- a/src/testdir/test17.in
+++ b/src/testdir/test17.in
@@ -33,6 +33,7 @@ STARTTEST
 :"  > nmake -f Make_dos.mak test17.out
 :w! test.out
 gf
+:set ff=unix
 :w! test.out
 :brewind
 ENDTEST
@@ -130,9 +131,10 @@ i%inc    FALSE.c foo.c
 :checkpath!
 :redir END
 :brewind
-:" replace "\" to "/" for Windows
+:" change "\" to "/" for Windows and fix 'fileformat'
 :e test.out
 :%s#\\#/#g
+:set ff&
 :w
 :q
 ENDTEST
--- a/src/testdir/test17.ok
+++ b/src/testdir/test17.ok
@@ -30,4 +30,4 @@ Xdir1/dir2/foo.c -->
   Xdir1/dir2/bar.c -->
     Xdir1/dir2/baz.c
     Xdir1/dir2/baz.c -->
-      foo.c^@  (Already listed)
+      foo.c  (Already listed)
--- a/src/version.c
+++ b/src/version.c
@@ -729,6 +729,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1302,
+/**/
     1301,
 /**/
     1300,