Mercurial > emacs
changeset 4683:6a5197116086
(x_term_init): Call change_keyboard_wait_descriptor,
instead of dup2. Use the existing X desc number in fcntl calls.
(XTread_socket): Don't forget to clear out `mask'.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 08 Sep 1993 17:53:49 +0000 |
parents | c4d471244116 |
children | 23b11c3b86b3 |
files | src/xterm.c |
diffstat | 1 files changed, 9 insertions(+), 18 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xterm.c Wed Sep 08 17:53:11 1993 +0000 +++ b/src/xterm.c Wed Sep 08 17:53:49 1993 +0000 @@ -3356,13 +3356,14 @@ SELECT_TYPE mask; EMACS_TIME timeout; - FD_SET(fd, &mask); + FD_ZERO (&mask); + FD_SET (fd, &mask); EMACS_SET_SECS_USECS (timeout, 0, 0); if (0 != select (fd + 1, &mask, (long *) 0, (long *) 0, &timeout) && !XStuffPending ()) kill (getpid (), SIGHUP); } -#endif /* ! defined (HAVE_SELECT) */ +#endif /* HAVE_SELECT */ #ifndef HAVE_X11 if (updating_frame == 0) @@ -4872,29 +4873,19 @@ #endif if (ConnectionNumber (x_current_display) != 0) - { - dup2 (ConnectionNumber (x_current_display), 0); - -#ifndef SYSV_STREAMS - /* Streams somehow keeps track of which descriptor number - is being used to talk to X. So it is not safe to substitute - descriptor 0. But it is safe to make descriptor 0 a copy of it. */ - close (ConnectionNumber (x_current_display)); - ConnectionNumber (x_current_display) = 0; /* Looks a little strange? - * check the def of the macro; - * it is a genuine lvalue */ -#endif /* SYSV_STREAMS */ - } + change_keyboard_wait_descriptor (ConnectionNumber (x_current_display)); + change_input_fd (ConnectionNumber (x_current_display)); #endif /* ! defined (HAVE_X11) */ #ifndef F_SETOWN_BUG #ifdef F_SETOWN - old_fcntl_owner = fcntl (0, F_GETOWN, 0); + old_fcntl_owner = fcntl (ConnectionNumber (x_current_display), F_GETOWN, 0); #ifdef F_SETOWN_SOCK_NEG - fcntl (0, F_SETOWN, -getpid ()); /* stdin is a socket here */ + /* stdin is a socket here */ + fcntl (ConnectionNumber (x_current_display), F_SETOWN, -getpid ()); #else /* ! defined (F_SETOWN_SOCK_NEG) */ - fcntl (0, F_SETOWN, getpid ()); + fcntl (ConnectionNumber (x_current_display), F_SETOWN, getpid ()); #endif /* ! defined (F_SETOWN_SOCK_NEG) */ #endif /* ! defined (F_SETOWN) */ #endif /* F_SETOWN_BUG */