Mercurial > hg > xemacs-beta
comparison src/process-unix.c @ 898:b0c24ea6a2a8
[xemacs-hg @ 2002-07-03 07:18:39 by michaels]
2002-07-01 Mike Sperber <mike@xemacs.org>
* process-unix.c (unix_send_process): Mark coding_outstream as
non-open upon SIGPIPE.
* event-stream.c (execute_internal_event): Reinstate code to
deactivate a dead network connection that got lost during the
stdout/stderr separation.
* event-stream.c (Fnext_event): Reorder switch cases to something
that makes sense.
author | michaels |
---|---|
date | Wed, 03 Jul 2002 07:18:41 +0000 |
parents | 804517e16990 |
children | eaedf30d9d76 |
comparison
equal
deleted
inserted
replaced
897:7da79fbe37bb | 898:b0c24ea6a2a8 |
---|---|
1557 EMACS_SIGNAL (SIGPIPE, old_sigpipe); | 1557 EMACS_SIGNAL (SIGPIPE, old_sigpipe); |
1558 /* Close the file lstream so we don't attempt to write to it further */ | 1558 /* Close the file lstream so we don't attempt to write to it further */ |
1559 /* #### There is controversy over whether this might cause fd leakage */ | 1559 /* #### There is controversy over whether this might cause fd leakage */ |
1560 /* my tests say no. -slb */ | 1560 /* my tests say no. -slb */ |
1561 XLSTREAM (p->pipe_outstream)->flags &= ~LSTREAM_FL_IS_OPEN; | 1561 XLSTREAM (p->pipe_outstream)->flags &= ~LSTREAM_FL_IS_OPEN; |
1562 XLSTREAM (p->coding_outstream)->flags &= ~LSTREAM_FL_IS_OPEN; | |
1562 p->status_symbol = Qexit; | 1563 p->status_symbol = Qexit; |
1563 p->exit_code = 256; /* #### SIGPIPE ??? */ | 1564 p->exit_code = 256; /* #### SIGPIPE ??? */ |
1564 p->core_dumped = 0; | 1565 p->core_dumped = 0; |
1565 p->tick++; | 1566 p->tick++; |
1566 process_tick++; | 1567 process_tick++; |
1567 deactivate_process (*((Lisp_Object *) (&vol_proc))); | 1568 deactivate_process (vol_proc); |
1568 invalid_operation ("SIGPIPE raised on process; closed it", p->name); | 1569 invalid_operation ("SIGPIPE raised on process; closed it", p->name); |
1569 } | 1570 } |
1570 | 1571 |
1571 old_sigpipe = (SIGTYPE (*) (int)) EMACS_SIGNAL (SIGPIPE, send_process_trap); | 1572 old_sigpipe = (SIGTYPE (*) (int)) EMACS_SIGNAL (SIGPIPE, send_process_trap); |
1572 Lstream_flush (XLSTREAM (DATA_OUTSTREAM (p))); | 1573 Lstream_flush (XLSTREAM (DATA_OUTSTREAM (p))); |