diff src/process-unix.c @ 375:a300bb07d72d r21-2b3

Import from CVS: tag r21-2b3
author cvs
date Mon, 13 Aug 2007 11:04:51 +0200
parents 6240c7796c7a
children d883f39b8495
line wrap: on
line diff
--- a/src/process-unix.c	Mon Aug 13 11:04:07 2007 +0200
+++ b/src/process-unix.c	Mon Aug 13 11:04:51 2007 +0200
@@ -1198,6 +1198,10 @@
   else
     { /* We got here from a longjmp() from the SIGPIPE handler */
       signal (SIGPIPE, old_sigpipe);
+      /* Close the file lstream so we don't attempt to write to it further */
+      /* #### There is controversy over whether this might cause fd leakage */
+      /*      my tests say no. -slb */
+      XLSTREAM (p->pipe_outstream)->flags &= ~LSTREAM_FL_IS_OPEN;
       p->status_symbol = Qexit;
       p->exit_code = 256; /* #### SIGPIPE ??? */
       p->core_dumped = 0;