From: Richard M. Stallman Date: Thu, 11 Nov 1993 04:36:02 +0000 (+0000) Subject: (Fcall_process): Clear synch_process_death and X-Git-Tag: emacs-19.34~10874 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=5c03767e4f546bd426d24e616016b346fe0b015b;p=emacs.git (Fcall_process): Clear synch_process_death and synch_process_retcode before the vfork. --- diff --git a/src/callproc.c b/src/callproc.c index 4f65ea573cd..197f9c833ef 100644 --- a/src/callproc.c +++ b/src/callproc.c @@ -249,6 +249,12 @@ If you quit, the process is killed with SIGINT, or SIGKILL if you quit again.") /* Record that we're about to create a synchronous process. */ synch_process_alive = 1; + /* These vars record information from process termination. + Clear them now before process can possibly terminate, + to avoid timing error if process terminates soon. */ + synch_process_death = 0; + synch_process_retcode = 0; + pid = vfork (); if (pid == 0) @@ -293,9 +299,6 @@ If you quit, the process is killed with SIGINT, or SIGKILL if you quit again.") return Qnil; } - synch_process_death = 0; - synch_process_retcode = 0; - record_unwind_protect (call_process_cleanup, Fcons (make_number (fd[0]), make_number (pid)));