mirror of
https://github.com/vim/vim.git
synced 2025-09-24 03:44:06 -04:00
patch 8.2.1398: autoload script sourced twice if sourced directly
Problem: Autoload script sourced twice if sourced directly. Solution: Do not source an autoload script again. (issue #6644)
This commit is contained in:
@@ -2012,6 +2012,7 @@ script_autoload(
|
|||||||
char_u *scriptname, *tofree;
|
char_u *scriptname, *tofree;
|
||||||
int ret = FALSE;
|
int ret = FALSE;
|
||||||
int i;
|
int i;
|
||||||
|
int ret_sid;
|
||||||
|
|
||||||
// If there is no '#' after name[0] there is no package name.
|
// If there is no '#' after name[0] there is no package name.
|
||||||
p = vim_strchr(name, AUTOLOAD_CHAR);
|
p = vim_strchr(name, AUTOLOAD_CHAR);
|
||||||
@@ -2039,7 +2040,8 @@ script_autoload(
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Try loading the package from $VIMRUNTIME/autoload/<name>.vim
|
// Try loading the package from $VIMRUNTIME/autoload/<name>.vim
|
||||||
if (source_runtime(scriptname, 0) == OK)
|
// Use "ret_sid" to avoid loading the same script again.
|
||||||
|
if (source_in_path(p_rtp, scriptname, 0, &ret_sid) == OK)
|
||||||
ret = TRUE;
|
ret = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,3 +1,4 @@
|
|||||||
let g:loaded_sourced_vim += 1
|
let g:loaded_sourced_vim += 1
|
||||||
func! sourced#something()
|
func sourced#something()
|
||||||
endfunc
|
endfunc
|
||||||
|
call sourced#something()
|
||||||
|
@@ -754,6 +754,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1398,
|
||||||
/**/
|
/**/
|
||||||
1397,
|
1397,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user