Patch 7.3.570
Problem:    ":vimgrep" does not obey 'wildignore'.
Solution:   Apply 'wildignore' and 'suffixes' to ":vimgrep". (Ingo Karkat)
Files:      src/ex_cmds2.c, src/proto/ex_cmds2.pro, src/quickfix.c, src/spell.c


*** ../vim-7.3.569/src/ex_cmds2.c       2012-06-20 15:48:53.000000000 +0200
--- src/ex_cmds2.c      2012-06-29 12:43:34.000000000 +0200
***************
*** 1850,1871 ****
  #if defined(FEAT_QUICKFIX) || defined(FEAT_SYN_HL) || defined(PROTO)
  /*
   * Parse a list of arguments (file names), expand them and return in
!  * "fnames[fcountp]".
   * Return FAIL or OK.
   */
      int
! get_arglist_exp(str, fcountp, fnamesp)
      char_u    *str;
      int               *fcountp;
      char_u    ***fnamesp;
  {
      garray_T  ga;
      int               i;
  
      if (get_arglist(&ga, str) == FAIL)
        return FAIL;
!     i = gen_expand_wildcards(ga.ga_len, (char_u **)ga.ga_data,
!                                      fcountp, fnamesp, EW_FILE|EW_NOTFOUND);
      ga_clear(&ga);
      return i;
  }
--- 1850,1877 ----
  #if defined(FEAT_QUICKFIX) || defined(FEAT_SYN_HL) || defined(PROTO)
  /*
   * Parse a list of arguments (file names), expand them and return in
!  * "fnames[fcountp]".  When "wig" is TRUE, removes files matching 
'wildignore'.
   * Return FAIL or OK.
   */
      int
! get_arglist_exp(str, fcountp, fnamesp, wig)
      char_u    *str;
      int               *fcountp;
      char_u    ***fnamesp;
+     int               wig;
  {
      garray_T  ga;
      int               i;
  
      if (get_arglist(&ga, str) == FAIL)
        return FAIL;
!     if (wig == TRUE)
!       i = expand_wildcards(ga.ga_len, (char_u **)ga.ga_data,
!                                       fcountp, fnamesp, EW_FILE|EW_NOTFOUND);
!     else
!       i = gen_expand_wildcards(ga.ga_len, (char_u **)ga.ga_data,
!                                       fcountp, fnamesp, EW_FILE|EW_NOTFOUND);
! 
      ga_clear(&ga);
      return i;
  }
*** ../vim-7.3.569/src/proto/ex_cmds2.pro       2011-05-19 18:26:34.000000000 
+0200
--- src/proto/ex_cmds2.pro      2012-06-29 12:43:49.000000000 +0200
***************
*** 42,48 ****
  int check_fname __ARGS((void));
  int buf_write_all __ARGS((buf_T *buf, int forceit));
  int get_arglist __ARGS((garray_T *gap, char_u *str));
! int get_arglist_exp __ARGS((char_u *str, int *fcountp, char_u ***fnamesp));
  void set_arglist __ARGS((char_u *str));
  void check_arg_idx __ARGS((win_T *win));
  void ex_args __ARGS((exarg_T *eap));
--- 42,48 ----
  int check_fname __ARGS((void));
  int buf_write_all __ARGS((buf_T *buf, int forceit));
  int get_arglist __ARGS((garray_T *gap, char_u *str));
! int get_arglist_exp __ARGS((char_u *str, int *fcountp, char_u ***fnamesp, int 
wig));
  void set_arglist __ARGS((char_u *str));
  void check_arg_idx __ARGS((win_T *win));
  void ex_args __ARGS((exarg_T *eap));
*** ../vim-7.3.569/src/quickfix.c       2012-06-01 18:34:37.000000000 +0200
--- src/quickfix.c      2012-06-29 12:43:49.000000000 +0200
***************
*** 3189,3195 ****
            ;
  
      /* parse the list of arguments */
!     if (get_arglist_exp(p, &fcount, &fnames) == FAIL)
        goto theend;
      if (fcount == 0)
      {
--- 3189,3195 ----
            ;
  
      /* parse the list of arguments */
!     if (get_arglist_exp(p, &fcount, &fnames, TRUE) == FAIL)
        goto theend;
      if (fcount == 0)
      {
*** ../vim-7.3.569/src/spell.c  2012-06-01 17:49:51.000000000 +0200
--- src/spell.c 2012-06-29 12:43:49.000000000 +0200
***************
*** 8553,8559 ****
      }
  
      /* Expand all the remaining arguments (e.g., $VIMRUNTIME). */
!     if (get_arglist_exp(arg, &fcount, &fnames) == OK)
      {
        mkspell(fcount, fnames, ascii, eap->forceit, FALSE);
        FreeWild(fcount, fnames);
--- 8553,8559 ----
      }
  
      /* Expand all the remaining arguments (e.g., $VIMRUNTIME). */
!     if (get_arglist_exp(arg, &fcount, &fnames, FALSE) == OK)
      {
        mkspell(fcount, fnames, ascii, eap->forceit, FALSE);
        FreeWild(fcount, fnames);
*** ../vim-7.3.569/src/version.c        2012-06-29 12:54:32.000000000 +0200
--- src/version.c       2012-06-29 12:56:12.000000000 +0200
***************
*** 716,717 ****
--- 716,719 ----
  {   /* Add new patch number below this line */
+ /**/
+     570,
  /**/

-- 
hundred-and-one symptoms of being an internet addict:
70. ISDN lines are added to your house on a hourly basis

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

Raspunde prin e-mail lui