diff options
Diffstat (limited to 'src/process.c')
| -rw-r--r-- | src/process.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/process.c b/src/process.c index b81c7b459e3..0edd092ef66 100644 --- a/src/process.c +++ b/src/process.c | |||
| @@ -2049,7 +2049,16 @@ create_process (Lisp_Object process, char **new_argv, Lisp_Object current_dir) | |||
| 2049 | int volatile forkerr_volatile = forkerr; | 2049 | int volatile forkerr_volatile = forkerr; |
| 2050 | struct Lisp_Process *p_volatile = p; | 2050 | struct Lisp_Process *p_volatile = p; |
| 2051 | 2051 | ||
| 2052 | #ifdef DARWIN_OS | ||
| 2053 | /* Darwin doesn't let us run setsid after a vfork, so use fork when | ||
| 2054 | necessary. */ | ||
| 2055 | if (pty_flag) | ||
| 2056 | pid = fork (); | ||
| 2057 | else | ||
| 2058 | pid = vfork (); | ||
| 2059 | #else | ||
| 2052 | pid = vfork (); | 2060 | pid = vfork (); |
| 2061 | #endif | ||
| 2053 | 2062 | ||
| 2054 | current_dir = current_dir_volatile; | 2063 | current_dir = current_dir_volatile; |
| 2055 | lisp_pty_name = lisp_pty_name_volatile; | 2064 | lisp_pty_name = lisp_pty_name_volatile; |