mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-30 09:00:31 -08:00
(inhibit_sentinels): New variable.
(exec_sentinel): Test inhibit_sentinels. (init_process): Initialize it.
This commit is contained in:
parent
5596b3bcf5
commit
84af9896c3
1 changed files with 15 additions and 6 deletions
|
|
@ -318,6 +318,12 @@ static int read_process_output P_ ((Lisp_Object, int));
|
|||
#define POLL_FOR_INPUT
|
||||
#endif
|
||||
|
||||
static Lisp_Object get_process ();
|
||||
static void exec_sentinel ();
|
||||
|
||||
extern EMACS_TIME timer_check ();
|
||||
extern int timers_run;
|
||||
|
||||
/* Mask of bits indicating the descriptors that we wait for input on. */
|
||||
|
||||
static SELECT_TYPE input_wait_mask;
|
||||
|
|
@ -386,15 +392,13 @@ struct sockaddr_and_len {
|
|||
#define DATAGRAM_CONN_P(proc) (0)
|
||||
#endif
|
||||
|
||||
static Lisp_Object get_process ();
|
||||
static void exec_sentinel ();
|
||||
|
||||
extern EMACS_TIME timer_check ();
|
||||
extern int timers_run;
|
||||
|
||||
/* Maximum number of bytes to send to a pty without an eof. */
|
||||
static int pty_max_bytes;
|
||||
|
||||
/* Nonzero means don't run process sentinels. This is used
|
||||
when exiting. */
|
||||
int inhibit_sentinels;
|
||||
|
||||
#ifdef HAVE_PTYS
|
||||
#ifdef HAVE_PTY_H
|
||||
#include <pty.h>
|
||||
|
|
@ -6559,6 +6563,9 @@ exec_sentinel (proc, reason)
|
|||
int outer_running_asynch_code = running_asynch_code;
|
||||
int waiting = waiting_for_user_input_p;
|
||||
|
||||
if (inhibit_sentinels)
|
||||
return;
|
||||
|
||||
/* No need to gcpro these, because all we do with them later
|
||||
is test them for EQness, and none of them should be a string. */
|
||||
odeactivate = Vdeactivate_mark;
|
||||
|
|
@ -6888,6 +6895,8 @@ init_process ()
|
|||
{
|
||||
register int i;
|
||||
|
||||
inhibit_sentinels = 0;
|
||||
|
||||
#ifdef SIGCHLD
|
||||
#ifndef CANNOT_DUMP
|
||||
if (! noninteractive || initialized)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue