aboutsummaryrefslogtreecommitdiffstats
path: root/src/w32proc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/w32proc.c')
-rw-r--r--src/w32proc.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/w32proc.c b/src/w32proc.c
index 84589388cd7..dabaa62f71c 100644
--- a/src/w32proc.c
+++ b/src/w32proc.c
@@ -990,6 +990,18 @@ find_child_pid (DWORD pid)
990 return NULL; 990 return NULL;
991} 991}
992 992
993void
994release_listen_threads (void)
995{
996 int i;
997
998 for (i = child_proc_count - 1; i >= 0; i--)
999 {
1000 if (CHILD_ACTIVE (&child_procs[i])
1001 && (fd_info[child_procs[i].fd].flags & FILE_LISTEN))
1002 child_procs[i].status = STATUS_READ_ERROR;
1003 }
1004}
993 1005
994/* Thread proc for child process and socket reader threads. Each thread 1006/* Thread proc for child process and socket reader threads. Each thread
995 is normally blocked until woken by select() to check for input by 1007 is normally blocked until woken by select() to check for input by
@@ -1916,7 +1928,7 @@ extern int proc_buffered_char[];
1916 1928
1917int 1929int
1918sys_select (int nfds, SELECT_TYPE *rfds, SELECT_TYPE *wfds, SELECT_TYPE *efds, 1930sys_select (int nfds, SELECT_TYPE *rfds, SELECT_TYPE *wfds, SELECT_TYPE *efds,
1919 EMACS_TIME *timeout, void *ignored) 1931 struct timespec *timeout, void *ignored)
1920{ 1932{
1921 SELECT_TYPE orfds; 1933 SELECT_TYPE orfds;
1922 DWORD timeout_ms, start_time; 1934 DWORD timeout_ms, start_time;