mirror of
https://github.com/vim/vim.git
synced 2025-09-27 04:14:06 -04:00
patch 7.4.1479
Problem: No testfor ":loadplugin". Solution: Add a test. Fix how option is being set.
This commit is contained in:
@@ -3058,14 +3058,14 @@ do_in_runtimepath(
|
||||
static void
|
||||
may_do_filetypes(char_u *pat)
|
||||
{
|
||||
char_u *cmd = vim_strsave((char_u *)"did_load_filetypes");
|
||||
char_u *cmd = vim_strsave((char_u *)"g:did_load_filetypes");
|
||||
|
||||
/* If runtime/filetype.vim wasn't loaded yet, the scripts will be found
|
||||
* when it loads. */
|
||||
if (cmd != NULL && eval_to_number(cmd) > 0)
|
||||
{
|
||||
do_cmdline_cmd((char_u *)"augroup filetypedetect");
|
||||
source_runtime(pat, TRUE);
|
||||
do_in_path(p_pp, pat, TRUE, source_callback, NULL);
|
||||
do_cmdline_cmd((char_u *)"augroup END");
|
||||
}
|
||||
vim_free(cmd);
|
||||
@@ -3125,8 +3125,8 @@ source_pack_plugin(char_u *fname, void *cookie UNUSED)
|
||||
if (p_rtp[keep] != NUL)
|
||||
mch_memmove(new_rtp + keep + 1 + addlen, p_rtp + keep,
|
||||
oldlen - keep + 1);
|
||||
free_string_option(p_rtp);
|
||||
p_rtp = new_rtp;
|
||||
set_option_value((char_u *)"rtp", 0L, new_rtp, 0);
|
||||
vim_free(new_rtp);
|
||||
}
|
||||
*p2 = c;
|
||||
|
||||
|
@@ -178,6 +178,7 @@ NEW_TESTS = test_arglist.res \
|
||||
test_increment.res \
|
||||
test_json.res \
|
||||
test_langmap.res \
|
||||
test_loadplugin.res \
|
||||
test_perl.res \
|
||||
test_quickfix.res \
|
||||
test_syntax.res \
|
||||
|
25
src/testdir/test_loadplugin.vim
Normal file
25
src/testdir/test_loadplugin.vim
Normal file
@@ -0,0 +1,25 @@
|
||||
" Tests for :loadplugin
|
||||
|
||||
func Test_loadplugin()
|
||||
let topdir = expand('%:h') . '/Xdir'
|
||||
exe 'set packpath=' . topdir
|
||||
let plugdir = topdir . '/pack/mine/opt/mytest'
|
||||
call mkdir(plugdir . '/plugin', 'p')
|
||||
call mkdir(plugdir . '/ftdetect', 'p')
|
||||
filetype on
|
||||
try
|
||||
exe 'split ' . plugdir . '/plugin/test.vim'
|
||||
call setline(1, 'let g:plugin_works = 42')
|
||||
wq
|
||||
|
||||
exe 'split ' . plugdir . '/ftdetect/test.vim'
|
||||
call setline(1, 'let g:ftdetect_works = 17')
|
||||
wq
|
||||
|
||||
loadplugin mytest
|
||||
call assert_true(42, g:plugin_works)
|
||||
call assert_true(17, g:ftdetect_works)
|
||||
finally
|
||||
call delete(topdir, 'rf')
|
||||
endtry
|
||||
endfunc
|
@@ -743,6 +743,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
1479,
|
||||
/**/
|
||||
1478,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user