X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/bd358779861f265a7acff31ead40172735af693e..ad8a47b89fc3c5a3302255f318b1ed805838cf72:/src/xgselect.c diff --git a/src/xgselect.c b/src/xgselect.c index 4d90298a9d..7a754bd75c 100644 --- a/src/xgselect.c +++ b/src/xgselect.c @@ -25,14 +25,16 @@ along with GNU Emacs. If not, see . */ #include #include +#include #include "frame.h" int -xg_select (int fds_lim, SELECT_TYPE *rfds, SELECT_TYPE *wfds, SELECT_TYPE *efds, - EMACS_TIME *timeout, sigset_t *sigmask) +xg_select (int fds_lim, fd_set *rfds, fd_set *wfds, fd_set *efds, + struct timespec const *timeout, sigset_t const *sigmask) { - SELECT_TYPE all_rfds, all_wfds; - EMACS_TIME tmo, *tmop = timeout; + fd_set all_rfds, all_wfds; + struct timespec tmo; + struct timespec const *tmop = timeout; GMainContext *context; int have_wfds = wfds != NULL; @@ -85,9 +87,9 @@ xg_select (int fds_lim, SELECT_TYPE *rfds, SELECT_TYPE *wfds, SELECT_TYPE *efds, if (tmo_in_millisec >= 0) { - tmo = make_emacs_time (tmo_in_millisec / 1000, - 1000 * 1000 * (tmo_in_millisec % 1000)); - if (!timeout || EMACS_TIME_LT (tmo, *timeout)) + tmo = make_timespec (tmo_in_millisec / 1000, + 1000 * 1000 * (tmo_in_millisec % 1000)); + if (!timeout || timespec_cmp (tmo, *timeout) < 0) tmop = &tmo; }