emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r111792: Remove unneeded bits of comm


From: Eli Zaretskii
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r111792: Remove unneeded bits of commit address@hidden merged from release branch.
Date: Fri, 15 Feb 2013 21:37:29 +0200
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 111792
committer: Eli Zaretskii <address@hidden>
branch nick: trunk
timestamp: Fri 2013-02-15 21:37:29 +0200
message:
  Remove unneeded bits of commit address@hidden merged from release branch.
modified:
  src/ChangeLog
  src/w32proc.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2013-02-15 19:08:11 +0000
+++ b/src/ChangeLog     2013-02-15 19:37:29 +0000
@@ -8,16 +8,7 @@
        when auto-save-timeout is less than 4.  (Bug#13720)
 
        * w32proc.c (new_child): Free up to 2 slots of dead processes at a
-       time.  Improve diagnostics in DebPrint.
-       (reader_thread): If cp->char_avail is NULL, set the FILE_AT_EOF
-       flag, so that sys_select could have a chance of noticing that this
-       process is dead, and call a SIGCHLD handler for it.  Improve
-       diagnostics in DebPrint.
-       (reap_subprocess): Reset the FILE_AT_EOF flag set by
-       reader_thread.
-       (sys_select): Watch a process whose procinfo.hProcess is non-NULL
-       even if its char_avail is NULL.  Allows to reap subprocesses that
-       were forcibly deleted by delete-process.  (Bug#13546)
+       time.  Improve diagnostics in DebPrint.  (Bug#13546)
 
        * w32.c (sys_socket, sys_bind, sys_connect, sys_gethostname)
        (sys_gethostbyname, sys_getservbyname, sys_getpeername)

=== modified file 'src/w32proc.c'
--- a/src/w32proc.c     2013-02-15 17:31:12 +0000
+++ b/src/w32proc.c     2013-02-15 19:37:29 +0000
@@ -1017,17 +1017,6 @@
       if (cp->status == STATUS_READ_ERROR || !cp->char_avail)
        break;
 
-      if (!CHILD_ACTIVE (cp) && cp->procinfo.hProcess && cp->fd >= 0)
-       {
-         /* Somebody already called delete_child on this child, since
-            only delete_child zeroes out cp->char_avail.  This means
-            no one will read from cp->fd and will not set the
-            FILE_AT_EOF flag, therefore preventing sys_select from
-            noticing that the process died.  Set the flag here
-            instead.  */
-         fd_info[cp->fd].flags |= FILE_AT_EOF;
-       }
-
       /* The name char_avail is a misnomer - it really just means the
         read-ahead has completed, whether successfully or not. */
       if (!SetEvent (cp->char_avail))
@@ -1237,11 +1226,6 @@
      sys_read when the subprocess output is fully read.  */
   if (cp->fd < 0)
     delete_child (cp);
-  else
-    {
-      /* Reset the flag set by reader_thread.  */
-      fd_info[cp->fd].flags &= ~FILE_AT_EOF;
-    }
 }
 
 /* Wait for a child process specified by PID, or for any of our
@@ -2067,7 +2051,7 @@
     /* Some child_procs might be sockets; ignore them.  Also some
        children may have died already, but we haven't finished reading
        the process output; ignore them too.  */
-    if ((CHILD_ACTIVE (cp) || cp->procinfo.hProcess)
+    if ((CHILD_ACTIVE (cp) && cp->procinfo.hProcess)
        && (cp->fd < 0
            || (fd_info[cp->fd].flags & FILE_SEND_SIGCHLD) == 0
            || (fd_info[cp->fd].flags & FILE_AT_EOF) != 0)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]