0
0
mirror of https://github.com/vim/vim.git synced 2025-09-25 03:54:15 -04:00

patch 8.1.1985: code for dealing with paths is spread out

Problem:    Code for dealing with paths is spread out.
Solution:   Move path related functions from misc1.c to filepath.c.
            Remove NO_EXPANDPATH.
This commit is contained in:
Bram Moolenaar
2019-09-04 20:59:15 +02:00
parent 3f4f3d8e7e
commit 26262f8777
14 changed files with 2152 additions and 2173 deletions

View File

@@ -605,6 +605,28 @@ ex_packadd(exarg_T *eap)
}
#endif
/*
* Sort "gap" and remove duplicate entries. "gap" is expected to contain a
* list of file names in allocated memory.
*/
void
remove_duplicates(garray_T *gap)
{
int i;
int j;
char_u **fnames = (char_u **)gap->ga_data;
sort_strings(fnames, gap->ga_len);
for (i = gap->ga_len - 1; i > 0; --i)
if (fnamecmp(fnames[i - 1], fnames[i]) == 0)
{
vim_free(fnames[i]);
for (j = i + 1; j < gap->ga_len; ++j)
fnames[j - 1] = fnames[j];
--gap->ga_len;
}
}
/*
* Expand color scheme, compiler or filetype names.
* Search from 'runtimepath':