summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2022-03-12 14:51:16 +0000
committerBram Moolenaar <Bram@vim.org>2022-03-12 14:51:16 +0000
commitd0b7bfa95798f5ec743d8afffbffb83aeac823da (patch)
tree61f205c552d192530301813912bc400ed8f28fb6
parentbbf84e2737daf3479e059dc7e7da0c50a07a4bf4 (diff)
downloadvim-git-d0b7bfa95798f5ec743d8afffbffb83aeac823da.tar.gz
patch 8.2.4552: in a :def function "put = expr" does not workv8.2.4552
Problem: In a :def function "put = expr" does not work. Solution: Skip over white space. (closes #9936)
-rw-r--r--src/testdir/test_vim9_cmd.vim2
-rw-r--r--src/version.c2
-rw-r--r--src/vim9cmds.c2
3 files changed, 4 insertions, 2 deletions
diff --git a/src/testdir/test_vim9_cmd.vim b/src/testdir/test_vim9_cmd.vim
index 92b834cb2..47b6f779c 100644
--- a/src/testdir/test_vim9_cmd.vim
+++ b/src/testdir/test_vim9_cmd.vim
@@ -1217,7 +1217,7 @@ def Test_put_command()
:2put =['a', 'b', 'c']
assert_equal(['ppp', 'a', 'b', 'c', 'above'], getline(2, 6))
- :0put ='first'
+ :0put = 'first'
assert_equal('first', getline(1))
:1put! ='first again'
assert_equal('first again', getline(1))
diff --git a/src/version.c b/src/version.c
index 13f5da3d7..acc5ccf6d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 4552,
+/**/
4551,
/**/
4550,
diff --git a/src/vim9cmds.c b/src/vim9cmds.c
index 5a4464459..b8a511f27 100644
--- a/src/vim9cmds.c
+++ b/src/vim9cmds.c
@@ -1767,7 +1767,7 @@ compile_put(char_u *arg, exarg_T *eap, cctx_T *cctx)
if (eap->regname == '=')
{
- char_u *p = line + 1;
+ char_u *p = skipwhite(line + 1);
if (compile_expr0(&p, cctx) == FAIL)
return NULL;