mirror of
https://github.com/vim/vim.git
synced 2025-09-25 03:54:15 -04:00
patch 8.2.1437: Vim9: 'statusline' is evaluated using Vim9 script syntax
Problem: Vim9: 'statusline' is evaluated using Vim9 script syntax. Solution: Always use legacy script syntax.
This commit is contained in:
@@ -520,6 +520,7 @@ eval_to_string(
|
|||||||
/*
|
/*
|
||||||
* Call eval_to_string() without using current local variables and using
|
* Call eval_to_string() without using current local variables and using
|
||||||
* textwinlock. When "use_sandbox" is TRUE use the sandbox.
|
* textwinlock. When "use_sandbox" is TRUE use the sandbox.
|
||||||
|
* Use legacy Vim script syntax.
|
||||||
*/
|
*/
|
||||||
char_u *
|
char_u *
|
||||||
eval_to_string_safe(
|
eval_to_string_safe(
|
||||||
@@ -528,7 +529,9 @@ eval_to_string_safe(
|
|||||||
{
|
{
|
||||||
char_u *retval;
|
char_u *retval;
|
||||||
funccal_entry_T funccal_entry;
|
funccal_entry_T funccal_entry;
|
||||||
|
int save_sc_version = current_sctx.sc_version;
|
||||||
|
|
||||||
|
current_sctx.sc_version = 1;
|
||||||
save_funccal(&funccal_entry);
|
save_funccal(&funccal_entry);
|
||||||
if (use_sandbox)
|
if (use_sandbox)
|
||||||
++sandbox;
|
++sandbox;
|
||||||
@@ -538,6 +541,7 @@ eval_to_string_safe(
|
|||||||
--sandbox;
|
--sandbox;
|
||||||
--textwinlock;
|
--textwinlock;
|
||||||
restore_funccal();
|
restore_funccal();
|
||||||
|
current_sctx.sc_version = save_sc_version;
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1086,6 +1086,20 @@ def Test_cexpr_vimscript()
|
|||||||
set errorformat&
|
set errorformat&
|
||||||
enddef
|
enddef
|
||||||
|
|
||||||
|
def Test_statusline_syntax()
|
||||||
|
# legacy syntax is used for 'statusline'
|
||||||
|
let lines =<< trim END
|
||||||
|
vim9script
|
||||||
|
func g:Status()
|
||||||
|
return '%{"x" is# "x"}'
|
||||||
|
endfunc
|
||||||
|
set laststatus=2 statusline=%!Status()
|
||||||
|
redrawstatus
|
||||||
|
set laststatus statusline=
|
||||||
|
END
|
||||||
|
CheckScriptSuccess(lines)
|
||||||
|
enddef
|
||||||
|
|
||||||
def Test_list_vimscript()
|
def Test_list_vimscript()
|
||||||
# checks line continuation and comments
|
# checks line continuation and comments
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
|
@@ -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 */
|
||||||
|
/**/
|
||||||
|
1437,
|
||||||
/**/
|
/**/
|
||||||
1436,
|
1436,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user