mirror of
https://github.com/neovim/neovim.git
synced 2025-09-13 23:08:16 +00:00
terminal: Support extra arguments in 'shell'. #4504
Tokenize p_sh if used as default in ex_terminal(). Previously p_sh was used as the first arg in a list when calling termopen(), this would try to call an untokenized version of shell, meaning if you had an argument in 'shell': set shell=/bin/bash\ --login the command would fail. Helped-by: oni-link <knil.ino@gmail.com> Closes #3999
This commit is contained in:

committed by
Justin M. Keyes

parent
0c1f783164
commit
2ea7bfc627
@@ -39,12 +39,13 @@ typedef struct {
|
||||
#endif
|
||||
|
||||
/// Builds the argument vector for running the user-configured 'shell' (p_sh)
|
||||
/// with an optional command prefixed by 'shellcmdflag' (p_shcf).
|
||||
/// with an optional command prefixed by 'shellcmdflag' (p_shcf). E.g.:
|
||||
///
|
||||
/// ["shell", "-extra_args", "-shellcmdflag", "command with spaces"]
|
||||
///
|
||||
/// @param cmd Command string, or NULL to run an interactive shell.
|
||||
/// @param extra_args Extra arguments to the shell, or NULL.
|
||||
/// @return A newly allocated argument vector. It must be freed with
|
||||
/// `shell_free_argv` when no longer needed.
|
||||
/// @return Newly allocated argument vector. Must be freed with shell_free_argv.
|
||||
char **shell_build_argv(const char *cmd, const char *extra_args)
|
||||
FUNC_ATTR_NONNULL_RET FUNC_ATTR_MALLOC
|
||||
{
|
||||
|
Reference in New Issue
Block a user