@@ -824,7 +824,7 @@ static struct fst
824824 {"tabpagenr" , 0 , 1 , f_tabpagenr },
825825 {"tabpagewinnr" , 1 , 2 , f_tabpagewinnr },
826826 {"tagfiles" , 0 , 0 , f_tagfiles },
827- {"taglist" , 1 , 1 , f_taglist },
827+ {"taglist" , 1 , 2 , f_taglist },
828828#ifdef FEAT_FLOAT
829829 {"tan" , 1 , 1 , f_tan },
830830 {"tanh" , 1 , 1 , f_tanh },
@@ -3589,7 +3589,8 @@ f_foldtextresult(typval_T *argvars UNUSED, typval_T *rettv)
35893589 fold_count = foldedCount (curwin , lnum , & foldinfo );
35903590 if (fold_count > 0 )
35913591 {
3592- text = get_foldtext (curwin , lnum , lnum + fold_count - 1 , & foldinfo , buf );
3592+ text = get_foldtext (curwin , lnum , lnum + fold_count - 1 ,
3593+ & foldinfo , buf );
35933594 if (text == buf )
35943595 text = vim_strsave (text );
35953596 rettv -> vval .v_string = text ;
@@ -12267,6 +12268,7 @@ f_tagfiles(typval_T *argvars UNUSED, typval_T *rettv)
1226712268 static void
1226812269f_taglist (typval_T * argvars , typval_T * rettv )
1226912270{
12271+ char_u * fname = NULL ;
1227012272 char_u * tag_pattern ;
1227112273
1227212274 tag_pattern = get_tv_string (& argvars [0 ]);
@@ -12275,8 +12277,10 @@ f_taglist(typval_T *argvars, typval_T *rettv)
1227512277 if (* tag_pattern == NUL )
1227612278 return ;
1227712279
12280+ if (argvars [1 ].v_type != VAR_UNKNOWN )
12281+ fname = get_tv_string (& argvars [1 ]);
1227812282 if (rettv_list_alloc (rettv ) == OK )
12279- (void )get_tags (rettv -> vval .v_list , tag_pattern );
12283+ (void )get_tags (rettv -> vval .v_list , tag_pattern , fname );
1228012284}
1228112285
1228212286/*
0 commit comments