diff options
author | Kim F. Storm <storm@cua.dk> | 2004-11-02 10:10:35 +0000 |
---|---|---|
committer | Kim F. Storm <storm@cua.dk> | 2004-11-02 10:10:35 +0000 |
commit | aba637ec5be01e0210e52f16d22d1ad4c3b27eb8 (patch) | |
tree | 64f636313880a19609206ab9758dd7c24bf94151 /src/callproc.c | |
parent | ae8bc416df377a08031194848acd6633f407af1b (diff) | |
download | emacs-aba637ec5be01e0210e52f16d22d1ad4c3b27eb8.tar.gz emacs-aba637ec5be01e0210e52f16d22d1ad4c3b27eb8.tar.bz2 emacs-aba637ec5be01e0210e52f16d22d1ad4c3b27eb8.zip |
From: YAMAMOTO Mitsuharu
(Fcall_process): Block input around vfork.
Diffstat (limited to 'src/callproc.c')
-rw-r--r-- | src/callproc.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/callproc.c b/src/callproc.c index 5d7447d94f2..e251fc65941 100644 --- a/src/callproc.c +++ b/src/callproc.c @@ -83,6 +83,7 @@ extern int errno; #include "process.h" #include "syssignal.h" #include "systty.h" +#include "blockinput.h" #ifdef MSDOS #include "msdos.h" @@ -624,6 +625,8 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */) pid = child_setup (filefd, fd1, fd_error, (char **) new_argv, 0, current_dir); #else /* not WINDOWSNT */ + BLOCK_INPUT; + pid = vfork (); if (pid == 0) @@ -641,6 +644,8 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */) child_setup (filefd, fd1, fd_error, (char **) new_argv, 0, current_dir); } + + UNBLOCK_INPUT; #endif /* not WINDOWSNT */ /* The MSDOS case did this already. */ |