patch 8.2.3297: cannot use all commands inside a {} block
Problem: Cannot use all commands inside a {} block after :command and
:autocmd.
Solution: Do consider \n to separate commands. (closes #8620)
diff --git a/src/userfunc.c b/src/userfunc.c
index 5cb3d92..79a6621 100644
--- a/src/userfunc.c
+++ b/src/userfunc.c
@@ -3842,7 +3842,7 @@
{
if (!eap->skip)
list_functions(NULL);
- eap->nextcmd = check_nextcmd(eap->arg);
+ set_nextcmd(eap, eap->arg);
return NULL;
}
@@ -3869,7 +3869,7 @@
}
if (*p == '/')
++p;
- eap->nextcmd = check_nextcmd(p);
+ set_nextcmd(eap, p);
return NULL;
}
@@ -3947,7 +3947,7 @@
semsg(_(e_trailing_arg), p);
goto ret_free;
}
- eap->nextcmd = check_nextcmd(p);
+ set_nextcmd(eap, p);
if (eap->nextcmd != NULL)
*p = NUL;
if (!eap->skip && !got_int)
@@ -4655,7 +4655,7 @@
semsg(_(e_trailing_arg), p);
return;
}
- eap->nextcmd = check_nextcmd(p);
+ set_nextcmd(eap, p);
if (eap->nextcmd != NULL)
*p = NUL;
@@ -4844,7 +4844,7 @@
if (returning)
eap->nextcmd = NULL;
else if (eap->nextcmd == NULL) // no argument
- eap->nextcmd = check_nextcmd(arg);
+ set_nextcmd(eap, arg);
if (eap->skip)
--emsg_skip;
@@ -5004,7 +5004,7 @@
}
}
else
- eap->nextcmd = check_nextcmd(arg);
+ set_nextcmd(eap, arg);
}
end: