Commit: patch 9.1.0459: Vim9: import autoload does not work with symlink

1 view
Skip to first unread message

Christian Brabandt

unread,
Jun 2, 2024, 10:30:10 AM6/2/24
to vim...@googlegroups.com
patch 9.1.0459: Vim9: import autoload does not work with symlink

Commit: https://github.com/vim/vim/commit/36b66767195f1e39e6cc997f825bedc6c823183b
Author: nwounkn <nwo...@gmail.com>
Date: Sun Jun 2 16:10:07 2024 +0200

patch 9.1.0459: Vim9: import autoload does not work with symlink

Problem: Vim9: import autoload does not work with symlink
(Olivier Dormond)
Solution: set sn_autoload_prefix in check_script_symlink
(nwounkn)

fixes: #14775
closes: #14885

Signed-off-by: nwounkn <nwo...@gmail.com>
Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/src/scriptfile.c b/src/scriptfile.c
index b6c66b7a4..6a6a037e3 100644
--- a/src/scriptfile.c
+++ b/src/scriptfile.c
@@ -435,8 +435,13 @@ check_script_symlink(int sid)
si = SCRIPT_ITEM(sid);
si->sn_sourced_sid = real_sid;
if (new_sid)
+ {
SCRIPT_ITEM(real_sid)->sn_import_autoload
= si->sn_import_autoload;
+ if (si->sn_autoload_prefix != NULL)
+ SCRIPT_ITEM(real_sid)->sn_autoload_prefix =
+ vim_strsave(si->sn_autoload_prefix);
+ }
}
}
vim_free(real_fname);
diff --git a/src/testdir/test_vim9_import.vim b/src/testdir/test_vim9_import.vim
index 3067ef6c9..fb309cb3b 100644
--- a/src/testdir/test_vim9_import.vim
+++ b/src/testdir/test_vim9_import.vim
@@ -3068,7 +3068,10 @@ def Test_vim9_import_symlink()
var lines =<< trim END
vim9script
import autoload 'bar.vim'
- g:resultFunc = bar.Func()
+ def FooFunc(): string
+ return bar.Func()
+ enddef
+ g:resultFunc = FooFunc()
g:resultValue = bar.value
END
writefile(lines, 'Xto/plugin/foo.vim')
diff --git a/src/version.c b/src/version.c
index 068c0793c..8b1282bd4 100644
--- a/src/version.c
+++ b/src/version.c
@@ -704,6 +704,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 459,
/**/
458,
/**/
Reply all
Reply to author
Forward
0 new messages