diff options
author | Karl Heuer <kwzh@gnu.org> | 1994-11-03 21:23:40 +0000 |
---|---|---|
committer | Karl Heuer <kwzh@gnu.org> | 1994-11-03 21:23:40 +0000 |
commit | a247bf214e7acb00454cb682fbdfcfbac00a1859 (patch) | |
tree | 5b815d73f1174ee6ae374cf629edb0f14fc77918 /lisp/subr.el | |
parent | 85cdd6afed4652974cbc6cbb1e8c5f46276e76bd (diff) | |
download | emacs-a247bf214e7acb00454cb682fbdfcfbac00a1859.tar.gz |
(start-process-shell-command): Don't use exec on windows-nt.
Diffstat (limited to 'lisp/subr.el')
-rw-r--r-- | lisp/subr.el | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/lisp/subr.el b/lisp/subr.el index b623658e8df..b0c718a7601 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -846,10 +846,15 @@ BUFFER is the buffer or (buffer-name) to associate with the process. Third arg is command name, the name of a shell command. Remaining arguments are the arguments for the command. Wildcards and redirection are handled as usual in the shell." - (if (eq system-type 'vax-vms) - (apply 'start-process name buffer args) - (start-process name buffer shell-file-name "-c" - (concat "exec " (mapconcat 'identity args " "))))) + (cond + ((eq system-type 'vax-vms) + (apply 'start-process name buffer args)) + ((eq system-type 'windows-nt) + (start-process name buffer shell-file-name shell-command-switch + (mapconcat 'identity args " "))) + (t + (start-process name buffer shell-file-name shell-command-switch + (concat "exec " (mapconcat 'identity args " ")))))) (defmacro save-match-data (&rest body) "Execute the BODY forms, restoring the global value of the match data." |