summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1996-12-30 01:26:08 +0000
committerRichard M. Stallman <rms@gnu.org>1996-12-30 01:26:08 +0000
commit5389e34213831a824a0aa04afab626663bf06b67 (patch)
tree97b4a86be534ad7e4d586baead4e5e4b243444fc
parenteeb3aa426da323da54cb2b699ef81eaf1f737707 (diff)
downloademacs-5389e34213831a824a0aa04afab626663bf06b67.tar.gz
Include blockinput.h.
(create_process): Block input around the fork.
-rw-r--r--src/process.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/process.c b/src/process.c
index 3325ffc1cea..830e559f188 100644
--- a/src/process.c
+++ b/src/process.c
@@ -103,6 +103,7 @@ Boston, MA 02111-1307, USA. */
#include "termopts.h"
#include "commands.h"
#include "frame.h"
+#include "blockinput.h"
Lisp_Object Qprocessp;
Lisp_Object Qrun, Qstop, Qsignal, Qopen, Qclosed;
@@ -1359,6 +1360,8 @@ create_process (process, new_argv, current_dir)
processes to get their return values scrambled. */
XSETINT (XPROCESS (process)->pid, -1);
+ BLOCK_INPUT;
+
{
/* child_setup must clobber environ on systems with true vfork.
Protect it from permanent change. */
@@ -1528,6 +1531,8 @@ create_process (process, new_argv, current_dir)
environ = save_environ;
}
+ UNBLOCK_INPUT;
+
/* This runs in the Emacs process. */
if (pid < 0)
{