From 71fb0c146bef08dc276fc5793bd47366e6e0f32a Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sat, 2 Apr 2016 22:44:16 +0200 Subject: patch 7.4.1699 Problem: :packadd does not work the same when used early or late. Solution: Always load plugins matching "plugin/**/*.vim". --- src/ex_cmds2.c | 2 +- src/testdir/test_packadd.vim | 7 ++++++- src/version.c | 2 ++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/ex_cmds2.c b/src/ex_cmds2.c index c03c24056..9f74376f1 100644 --- a/src/ex_cmds2.c +++ b/src/ex_cmds2.c @@ -3376,7 +3376,7 @@ add_pack_plugin(char_u *fname, void *cookie) if (load_files) { - static char *plugpat = "%s/plugin/*.vim"; + static char *plugpat = "%s/plugin/**/*.vim"; static char *ftpat = "%s/ftdetect/*.vim"; int len; char_u *pat; diff --git a/src/testdir/test_packadd.vim b/src/testdir/test_packadd.vim index 44b733ffc..9e75c3383 100644 --- a/src/testdir/test_packadd.vim +++ b/src/testdir/test_packadd.vim @@ -11,7 +11,7 @@ func TearDown() endfunc func Test_packadd() - call mkdir(s:plugdir . '/plugin', 'p') + call mkdir(s:plugdir . '/plugin/also', 'p') call mkdir(s:plugdir . '/ftdetect', 'p') set rtp& let rtp = &rtp @@ -21,6 +21,10 @@ func Test_packadd() call setline(1, 'let g:plugin_works = 42') wq + exe 'split ' . s:plugdir . '/plugin/also/loaded.vim' + call setline(1, 'let g:plugin_also_works = 77') + wq + exe 'split ' . s:plugdir . '/ftdetect/test.vim' call setline(1, 'let g:ftdetect_works = 17') wq @@ -28,6 +32,7 @@ func Test_packadd() packadd mytest call assert_equal(42, g:plugin_works) + call assert_equal(77, g:plugin_also_works) call assert_equal(17, g:ftdetect_works) call assert_true(len(&rtp) > len(rtp)) call assert_true(&rtp =~ 'testdir/Xdir/pack/mine/opt/mytest\($\|,\)') diff --git a/src/version.c b/src/version.c index 19e44d87c..23d4acb83 100644 --- a/src/version.c +++ b/src/version.c @@ -748,6 +748,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1699, /**/ 1698, /**/ -- cgit v1.2.1