Skip to content

Commit

Permalink
updated for version 7.3.570
Browse files Browse the repository at this point in the history
Problem:    ":vimgrep" does not obey 'wildignore'.
Solution:   Apply 'wildignore' and 'suffixes' to ":vimgrep". (Ingo Karkat)
  • Loading branch information
brammool committed Jun 29, 2012
1 parent 4658e9b commit c0e5a0e
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 7 deletions.
14 changes: 10 additions & 4 deletions src/ex_cmds2.c
Expand Up @@ -1850,22 +1850,28 @@ get_arglist(gap, str)
#if defined(FEAT_QUICKFIX) || defined(FEAT_SYN_HL) || defined(PROTO)
/*
* Parse a list of arguments (file names), expand them and return in
* "fnames[fcountp]".
* "fnames[fcountp]". When "wig" is TRUE, removes files matching 'wildignore'.
* Return FAIL or OK.
*/
int
get_arglist_exp(str, fcountp, fnamesp)
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;
i = gen_expand_wildcards(ga.ga_len, (char_u **)ga.ga_data,
fcountp, fnamesp, EW_FILE|EW_NOTFOUND);
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;
}
Expand Down
2 changes: 1 addition & 1 deletion src/proto/ex_cmds2.pro
Expand Up @@ -42,7 +42,7 @@ int check_changed_any __ARGS((int hidden));
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 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));
Expand Down
2 changes: 1 addition & 1 deletion src/quickfix.c
Expand Up @@ -3189,7 +3189,7 @@ ex_vimgrep(eap)
;

/* parse the list of arguments */
if (get_arglist_exp(p, &fcount, &fnames) == FAIL)
if (get_arglist_exp(p, &fcount, &fnames, TRUE) == FAIL)
goto theend;
if (fcount == 0)
{
Expand Down
2 changes: 1 addition & 1 deletion src/spell.c
Expand Up @@ -8553,7 +8553,7 @@ ex_mkspell(eap)
}

/* Expand all the remaining arguments (e.g., $VIMRUNTIME). */
if (get_arglist_exp(arg, &fcount, &fnames) == OK)
if (get_arglist_exp(arg, &fcount, &fnames, FALSE) == OK)
{
mkspell(fcount, fnames, ascii, eap->forceit, FALSE);
FreeWild(fcount, fnames);
Expand Down
2 changes: 2 additions & 0 deletions src/version.c
Expand Up @@ -714,6 +714,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
/**/
570,
/**/
569,
/**/
Expand Down

0 comments on commit c0e5a0e

Please sign in to comment.