# HG changeset patch # User Richard M. Stallman # Date 785253969 0 # Node ID 3b058e13d1777914f9e7f85b171c4cbc57c08d25 # Parent d95a8d8ab0f4ce66428fd3f921a63c62bba5e796 (start-process-shell-command): Don't use `exec'-- run the command in a child process. diff -r d95a8d8ab0f4 -r 3b058e13d177 lisp/subr.el --- a/lisp/subr.el Sat Nov 19 14:03:23 1994 +0000 +++ b/lisp/subr.el Sat Nov 19 14:06:09 1994 +0000 @@ -853,12 +853,11 @@ (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 " "))) + ;; We used to use `exec' to replace the shell with the command, + ;; but that failed to handle (...) and semicolon, etc. (t (start-process name buffer shell-file-name shell-command-switch - (concat "exec " (mapconcat 'identity args " ")))))) + (mapconcat 'identity args " "))))) (defmacro save-match-data (&rest body) "Execute the BODY forms, restoring the global value of the match data."