99b86a7
To: vim-dev@vim.org
99b86a7
Subject: patch 7.1.135
99b86a7
Fcc: outbox
99b86a7
From: Bram Moolenaar <Bram@moolenaar.net>
99b86a7
Mime-Version: 1.0
99b86a7
Content-Type: text/plain; charset=ISO-8859-1
99b86a7
Content-Transfer-Encoding: 8bit
99b86a7
------------
99b86a7
99b86a7
Patch 7.1.135
99b86a7
Problem:    Win32: When editing a file c:\tmp\foo and c:\tmp\\foo we have two
99b86a7
	    buffers for the same file. (Suresh Govindachar)
99b86a7
Solution:   Invoke FullName_save() when a path contains "//" or "\\".
99b86a7
Files:	    src/buffer.c
99b86a7
99b86a7
99b86a7
*** ../vim-7.1.134/src/buffer.c	Sun Sep 30 14:00:41 2007
99b86a7
--- src/buffer.c	Wed Oct  3 14:24:52 2007
99b86a7
***************
99b86a7
*** 4175,4203 ****
99b86a7
       * mess up the full path name, even though it starts with a '/'.
99b86a7
       * Also expand when there is ".." in the file name, try to remove it,
99b86a7
       * because "c:/src/../README" is equal to "c:/README".
99b86a7
       * For MS-Windows also expand names like "longna~1" to "longname".
99b86a7
       */
99b86a7
  #ifdef UNIX
99b86a7
      return FullName_save(fname, TRUE);
99b86a7
  #else
99b86a7
!     if (!vim_isAbsName(fname) || strstr((char *)fname, "..") != NULL
99b86a7
! #if defined(MSWIN) || defined(DJGPP)
99b86a7
  	    || vim_strchr(fname, '~') != NULL
99b86a7
! #endif
99b86a7
  	    )
99b86a7
  	return FullName_save(fname, FALSE);
99b86a7
  
99b86a7
      fname = vim_strsave(fname);
99b86a7
  
99b86a7
! #ifdef USE_FNAME_CASE
99b86a7
! # ifdef USE_LONG_FNAME
99b86a7
      if (USE_LONG_FNAME)
99b86a7
! # endif
99b86a7
      {
99b86a7
  	if (fname != NULL)
99b86a7
  	    fname_case(fname, 0);	/* set correct case for file name */
99b86a7
      }
99b86a7
! #endif
99b86a7
  
99b86a7
      return fname;
99b86a7
  #endif
99b86a7
--- 4175,4209 ----
99b86a7
       * mess up the full path name, even though it starts with a '/'.
99b86a7
       * Also expand when there is ".." in the file name, try to remove it,
99b86a7
       * because "c:/src/../README" is equal to "c:/README".
99b86a7
+      * Similarly "c:/src//file" is equal to "c:/src/file".
99b86a7
       * For MS-Windows also expand names like "longna~1" to "longname".
99b86a7
       */
99b86a7
  #ifdef UNIX
99b86a7
      return FullName_save(fname, TRUE);
99b86a7
  #else
99b86a7
!     if (!vim_isAbsName(fname)
99b86a7
! 	    || strstr((char *)fname, "..") != NULL
99b86a7
! 	    || strstr((char *)fname, "//") != NULL
99b86a7
! # ifdef BACKSLASH_IN_FILENAME
99b86a7
! 	    || strstr((char *)fname, "\\\\") != NULL
99b86a7
! # endif
99b86a7
! # if defined(MSWIN) || defined(DJGPP)
99b86a7
  	    || vim_strchr(fname, '~') != NULL
99b86a7
! # endif
99b86a7
  	    )
99b86a7
  	return FullName_save(fname, FALSE);
99b86a7
  
99b86a7
      fname = vim_strsave(fname);
99b86a7
  
99b86a7
! # ifdef USE_FNAME_CASE
99b86a7
! #  ifdef USE_LONG_FNAME
99b86a7
      if (USE_LONG_FNAME)
99b86a7
! #  endif
99b86a7
      {
99b86a7
  	if (fname != NULL)
99b86a7
  	    fname_case(fname, 0);	/* set correct case for file name */
99b86a7
      }
99b86a7
! # endif
99b86a7
  
99b86a7
      return fname;
99b86a7
  #endif
99b86a7
*** ../vim-7.1.134/src/version.c	Wed Oct  3 13:28:40 2007
99b86a7
--- src/version.c	Wed Oct  3 14:26:54 2007
99b86a7
***************
99b86a7
*** 668,669 ****
99b86a7
--- 668,671 ----
99b86a7
  {   /* Add new patch number below this line */
99b86a7
+ /**/
99b86a7
+     135,
99b86a7
  /**/
99b86a7
99b86a7
-- 
99b86a7
   A village.  Sound of chanting of Latin canon, punctuated by short, sharp
99b86a7
   cracks.  It comes nearer.  We see it is a line of MONKS ala SEVENTH SEAL
99b86a7
   flagellation scene, chanting and banging themselves on the foreheads with
99b86a7
   wooden boards.
99b86a7
                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
99b86a7
99b86a7
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
99b86a7
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
99b86a7
\\\        download, build and distribute -- http://www.A-A-P.org        ///
99b86a7
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///