diff options
| author | Jason Rumney | 2007-11-26 23:04:09 +0000 |
|---|---|---|
| committer | Jason Rumney | 2007-11-26 23:04:09 +0000 |
| commit | 0a7a6051a9c0b50cd59285e9d174d3362e913ebd (patch) | |
| tree | 789636300a13f4f9e5c186200c8b7449fa66a190 /src | |
| parent | 2867910524be26279744d54d04ced7b4134eb7b6 (diff) | |
| download | emacs-0a7a6051a9c0b50cd59285e9d174d3362e913ebd.tar.gz emacs-0a7a6051a9c0b50cd59285e9d174d3362e913ebd.zip | |
(sys_spawnve): Quote args with wildcards.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/w32proc.c | 9 |
2 files changed, 12 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 9ed11c061e2..13edfa07e90 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2007-11-26 Jason Rumney <jasonr@gnu.org> | ||
| 2 | |||
| 3 | * w32proc.c (sys_spawnve): Quote args with wildcards. | ||
| 4 | |||
| 1 | 2007-11-26 Andreas Schwab <schwab@suse.de> | 5 | 2007-11-26 Andreas Schwab <schwab@suse.de> |
| 2 | 6 | ||
| 3 | * process.c (list_processes_1): Fix indentation level of the | 7 | * process.c (list_processes_1): Fix indentation level of the |
diff --git a/src/w32proc.c b/src/w32proc.c index c21d589c525..a14a8ee384c 100644 --- a/src/w32proc.c +++ b/src/w32proc.c | |||
| @@ -781,7 +781,14 @@ sys_spawnve (int mode, char *cmdname, char **argv, char **envp) | |||
| 781 | variable in their environment. */ | 781 | variable in their environment. */ |
| 782 | char ppid_env_var_buffer[64]; | 782 | char ppid_env_var_buffer[64]; |
| 783 | char *extra_env[] = {ppid_env_var_buffer, NULL}; | 783 | char *extra_env[] = {ppid_env_var_buffer, NULL}; |
| 784 | char *sepchars = " \t"; | 784 | /* These are the characters that cause an argument to need quoting. |
| 785 | Arguments with whitespace characters need quoting to prevent the | ||
| 786 | argument being split into two or more. Arguments with wildcards | ||
| 787 | are also quoted, for consistency with posix platforms, where wildcards | ||
| 788 | are not expanded if we run the program directly without a shell. | ||
| 789 | Some extra whitespace characters need quoting in Cygwin programs, | ||
| 790 | so this list is conditionally modified below. */ | ||
| 791 | char *sepchars = " \t*?"; | ||
| 785 | 792 | ||
| 786 | /* We don't care about the other modes */ | 793 | /* We don't care about the other modes */ |
| 787 | if (mode != _P_NOWAIT) | 794 | if (mode != _P_NOWAIT) |