8edf961
To: vim_dev@googlegroups.com
8edf961
Subject: Patch 7.3.075
8edf961
Fcc: outbox
8edf961
From: Bram Moolenaar <Bram@moolenaar.net>
8edf961
Mime-Version: 1.0
8edf961
Content-Type: text/plain; charset=UTF-8
8edf961
Content-Transfer-Encoding: 8bit
8edf961
------------
8edf961
8edf961
Patch 7.3.075 (after 7.3.072)
8edf961
Problem:    Missing part of 'wildignorecase'
8edf961
Solution:   Also adjust expand()
8edf961
Files:	    src/eval.c
8edf961
8edf961
8edf961
*** ../vim-7.3.074/src/eval.c	2010-12-02 21:43:10.000000000 +0100
8edf961
--- src/eval.c	2010-12-02 17:30:23.000000000 +0100
8edf961
***************
8edf961
*** 9876,9882 ****
8edf961
      char_u	*s;
8edf961
      int		len;
8edf961
      char_u	*errormsg;
8edf961
!     int		flags = WILD_SILENT|WILD_USE_NL|WILD_LIST_NOTFOUND;
8edf961
      expand_T	xpc;
8edf961
      int		error = FALSE;
8edf961
  
8edf961
--- 9876,9882 ----
8edf961
      char_u	*s;
8edf961
      int		len;
8edf961
      char_u	*errormsg;
8edf961
!     int		options = WILD_SILENT|WILD_USE_NL|WILD_LIST_NOTFOUND;
8edf961
      expand_T	xpc;
8edf961
      int		error = FALSE;
8edf961
  
8edf961
***************
8edf961
*** 9894,9905 ****
8edf961
  	 * for 'wildignore' and don't put matches for 'suffixes' at the end. */
8edf961
  	if (argvars[1].v_type != VAR_UNKNOWN
8edf961
  				    && get_tv_number_chk(&argvars[1], &error))
8edf961
! 	    flags |= WILD_KEEP_ALL;
8edf961
  	if (!error)
8edf961
  	{
8edf961
  	    ExpandInit(&xpc);
8edf961
  	    xpc.xp_context = EXPAND_FILES;
8edf961
! 	    rettv->vval.v_string = ExpandOne(&xpc, s, NULL, flags, WILD_ALL);
8edf961
  	}
8edf961
  	else
8edf961
  	    rettv->vval.v_string = NULL;
8edf961
--- 9894,9907 ----
8edf961
  	 * for 'wildignore' and don't put matches for 'suffixes' at the end. */
8edf961
  	if (argvars[1].v_type != VAR_UNKNOWN
8edf961
  				    && get_tv_number_chk(&argvars[1], &error))
8edf961
! 	    options |= WILD_KEEP_ALL;
8edf961
  	if (!error)
8edf961
  	{
8edf961
  	    ExpandInit(&xpc);
8edf961
  	    xpc.xp_context = EXPAND_FILES;
8edf961
! 	    if (p_wic)
8edf961
! 		options += WILD_ICASE;
8edf961
! 	    rettv->vval.v_string = ExpandOne(&xpc, s, NULL, options, WILD_ALL);
8edf961
  	}
8edf961
  	else
8edf961
  	    rettv->vval.v_string = NULL;
8edf961
***************
8edf961
*** 11672,11678 ****
8edf961
      typval_T	*argvars;
8edf961
      typval_T	*rettv;
8edf961
  {
8edf961
!     int		flags = WILD_SILENT|WILD_USE_NL;
8edf961
      expand_T	xpc;
8edf961
      int		error = FALSE;
8edf961
  
8edf961
--- 11674,11680 ----
8edf961
      typval_T	*argvars;
8edf961
      typval_T	*rettv;
8edf961
  {
8edf961
!     int		options = WILD_SILENT|WILD_USE_NL;
8edf961
      expand_T	xpc;
8edf961
      int		error = FALSE;
8edf961
  
8edf961
***************
8edf961
*** 11680,11693 ****
8edf961
      * for 'wildignore' and don't put matches for 'suffixes' at the end. */
8edf961
      if (argvars[1].v_type != VAR_UNKNOWN
8edf961
  				&& get_tv_number_chk(&argvars[1], &error))
8edf961
! 	flags |= WILD_KEEP_ALL;
8edf961
      rettv->v_type = VAR_STRING;
8edf961
      if (!error)
8edf961
      {
8edf961
  	ExpandInit(&xpc);
8edf961
  	xpc.xp_context = EXPAND_FILES;
8edf961
  	rettv->vval.v_string = ExpandOne(&xpc, get_tv_string(&argvars[0]),
8edf961
! 						       NULL, flags, WILD_ALL);
8edf961
      }
8edf961
      else
8edf961
  	rettv->vval.v_string = NULL;
8edf961
--- 11682,11697 ----
8edf961
      * for 'wildignore' and don't put matches for 'suffixes' at the end. */
8edf961
      if (argvars[1].v_type != VAR_UNKNOWN
8edf961
  				&& get_tv_number_chk(&argvars[1], &error))
8edf961
! 	options |= WILD_KEEP_ALL;
8edf961
      rettv->v_type = VAR_STRING;
8edf961
      if (!error)
8edf961
      {
8edf961
  	ExpandInit(&xpc);
8edf961
  	xpc.xp_context = EXPAND_FILES;
8edf961
+ 	if (p_wic)
8edf961
+ 	    options += WILD_ICASE;
8edf961
  	rettv->vval.v_string = ExpandOne(&xpc, get_tv_string(&argvars[0]),
8edf961
! 						     NULL, options, WILD_ALL);
8edf961
      }
8edf961
      else
8edf961
  	rettv->vval.v_string = NULL;
8edf961
*** ../vim-7.3.074/src/version.c	2010-12-02 21:43:10.000000000 +0100
8edf961
--- src/version.c	2010-12-02 21:43:59.000000000 +0100
8edf961
***************
8edf961
*** 716,717 ****
8edf961
--- 716,719 ----
8edf961
  {   /* Add new patch number below this line */
8edf961
+ /**/
8edf961
+     75,
8edf961
  /**/
8edf961
8edf961
-- 
8edf961
Engineers will go without food and hygiene for days to solve a problem.
8edf961
(Other times just because they forgot.)
8edf961
				(Scott Adams - The Dilbert principle)
8edf961
8edf961
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
8edf961
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
8edf961
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
8edf961
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///