]> git.eshelyaron.com Git - emacs.git/commitdiff
(wait_reading_process_input) [not subprocesses]: Do
authorKarl Heuer <kwzh@gnu.org>
Wed, 24 Jan 1996 21:21:07 +0000 (21:21 +0000)
committerKarl Heuer <kwzh@gnu.org>
Wed, 24 Jan 1996 21:21:07 +0000 (21:21 +0000)
not assume SELECT_TYPE is an int.

src/process.c

index 9325728ba1b1d4d961e6834153e46d3a937069ea..c68309432b5654696dc28bc6d6adeb889d1e8f63 100644 (file)
@@ -3776,7 +3776,7 @@ wait_reading_process_input (time_limit, microsecs, read_kbd, do_display)
      int do_display;
 {
   EMACS_TIME end_time, timeout, *timeout_p;
-  int waitchannels;
+  SELECT_TYPE waitchannels;
 
   /* What does time_limit really mean?  */
   if (time_limit || microsecs)
@@ -3806,7 +3806,10 @@ wait_reading_process_input (time_limit, microsecs, read_kbd, do_display)
     {
       int nfds;
 
-      waitchannels = XINT (read_kbd) ? 1 : 0;
+      if (XINT (read_kbd))
+       FD_SET (0, &waitchannels);
+      else
+       FD_ZERO (&waitchannels);
 
       /* If calling from keyboard input, do not quit
         since we want to return C-g as an input character.
@@ -3849,7 +3852,7 @@ wait_reading_process_input (time_limit, microsecs, read_kbd, do_display)
          /* If the system call was interrupted, then go around the
             loop again.  */
          if (errno == EINTR)
-           waitchannels = 0;
+           FD_ZERO (&waitchannels);
        }
 #ifdef sun
       else if (nfds > 0 && (waitchannels & 1)  && interrupt_input)