From d0b7bfa95798f5ec743d8afffbffb83aeac823da Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sat, 12 Mar 2022 14:51:16 +0000 Subject: [PATCH] patch 8.2.4552: in a :def function "put = expr" does not work Problem: In a :def function "put = expr" does not work. Solution: Skip over white space. (closes #9936) --- src/testdir/test_vim9_cmd.vim | 2 +- src/version.c | 2 ++ src/vim9cmds.c | 2 +- 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 @@ -750,6 +750,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 4552, /**/ 4551, /**/ 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; -- 2.40.0