summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-04-02 22:44:16 +0200
committerBram Moolenaar <Bram@vim.org>2016-04-02 22:44:16 +0200
commit71fb0c146bef08dc276fc5793bd47366e6e0f32a (patch)
treeb4d2535d4cfd7d63b449ea32b87e818f156b021b
parent298c65971e884666d57c32bff6b730d517d9dc30 (diff)
downloadvim-git-7.4.1699.tar.gz
patch 7.4.1699v7.4.1699
Problem: :packadd does not work the same when used early or late. Solution: Always load plugins matching "plugin/**/*.vim".
-rw-r--r--src/ex_cmds2.c2
-rw-r--r--src/testdir/test_packadd.vim7
-rw-r--r--src/version.c2
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
@@ -749,6 +749,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1699,
+/**/
1698,
/**/
1697,