diff options
| author | Eli Zaretskii | 2013-02-15 21:37:29 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2013-02-15 21:37:29 +0200 |
| commit | b2af991a2ff353b27fd6f72785e0081a742fd88a (patch) | |
| tree | 6753dddf86a8424c10d7ce847ee811ecdeca87af /src/w32proc.c | |
| parent | e454145b0985d28ef5581be5c469726e68762322 (diff) | |
| download | emacs-b2af991a2ff353b27fd6f72785e0081a742fd88a.tar.gz emacs-b2af991a2ff353b27fd6f72785e0081a742fd88a.zip | |
Remove unneeded bits of commit 2013-02-15T09:41:31Z!eliz@gnu.org merged from release branch.
Diffstat (limited to 'src/w32proc.c')
| -rw-r--r-- | src/w32proc.c | 18 |
1 files changed, 1 insertions, 17 deletions
diff --git a/src/w32proc.c b/src/w32proc.c index 8226564c88f..3f3e97c77a0 100644 --- a/src/w32proc.c +++ b/src/w32proc.c | |||
| @@ -1017,17 +1017,6 @@ reader_thread (void *arg) | |||
| 1017 | if (cp->status == STATUS_READ_ERROR || !cp->char_avail) | 1017 | if (cp->status == STATUS_READ_ERROR || !cp->char_avail) |
| 1018 | break; | 1018 | break; |
| 1019 | 1019 | ||
| 1020 | if (!CHILD_ACTIVE (cp) && cp->procinfo.hProcess && cp->fd >= 0) | ||
| 1021 | { | ||
| 1022 | /* Somebody already called delete_child on this child, since | ||
| 1023 | only delete_child zeroes out cp->char_avail. This means | ||
| 1024 | no one will read from cp->fd and will not set the | ||
| 1025 | FILE_AT_EOF flag, therefore preventing sys_select from | ||
| 1026 | noticing that the process died. Set the flag here | ||
| 1027 | instead. */ | ||
| 1028 | fd_info[cp->fd].flags |= FILE_AT_EOF; | ||
| 1029 | } | ||
| 1030 | |||
| 1031 | /* The name char_avail is a misnomer - it really just means the | 1020 | /* The name char_avail is a misnomer - it really just means the |
| 1032 | read-ahead has completed, whether successfully or not. */ | 1021 | read-ahead has completed, whether successfully or not. */ |
| 1033 | if (!SetEvent (cp->char_avail)) | 1022 | if (!SetEvent (cp->char_avail)) |
| @@ -1237,11 +1226,6 @@ reap_subprocess (child_process *cp) | |||
| 1237 | sys_read when the subprocess output is fully read. */ | 1226 | sys_read when the subprocess output is fully read. */ |
| 1238 | if (cp->fd < 0) | 1227 | if (cp->fd < 0) |
| 1239 | delete_child (cp); | 1228 | delete_child (cp); |
| 1240 | else | ||
| 1241 | { | ||
| 1242 | /* Reset the flag set by reader_thread. */ | ||
| 1243 | fd_info[cp->fd].flags &= ~FILE_AT_EOF; | ||
| 1244 | } | ||
| 1245 | } | 1229 | } |
| 1246 | 1230 | ||
| 1247 | /* Wait for a child process specified by PID, or for any of our | 1231 | /* Wait for a child process specified by PID, or for any of our |
| @@ -2067,7 +2051,7 @@ count_children: | |||
| 2067 | /* Some child_procs might be sockets; ignore them. Also some | 2051 | /* Some child_procs might be sockets; ignore them. Also some |
| 2068 | children may have died already, but we haven't finished reading | 2052 | children may have died already, but we haven't finished reading |
| 2069 | the process output; ignore them too. */ | 2053 | the process output; ignore them too. */ |
| 2070 | if ((CHILD_ACTIVE (cp) || cp->procinfo.hProcess) | 2054 | if ((CHILD_ACTIVE (cp) && cp->procinfo.hProcess) |
| 2071 | && (cp->fd < 0 | 2055 | && (cp->fd < 0 |
| 2072 | || (fd_info[cp->fd].flags & FILE_SEND_SIGCHLD) == 0 | 2056 | || (fd_info[cp->fd].flags & FILE_SEND_SIGCHLD) == 0 |
| 2073 | || (fd_info[cp->fd].flags & FILE_AT_EOF) != 0) | 2057 | || (fd_info[cp->fd].flags & FILE_AT_EOF) != 0) |