aboutsummaryrefslogtreecommitdiffstats
path: root/src/msdos.c
diff options
context:
space:
mode:
authorPaul Eggert2013-08-27 11:47:55 -0700
committerPaul Eggert2013-08-27 11:47:55 -0700
commit43aac990c339c0fc3304aa476ebc8ea8467f107e (patch)
tree24f6477d7ec79c7f3529e08c421f309b1180c436 /src/msdos.c
parent278208b8e6917af1e7e2623a3869614fa70059ed (diff)
downloademacs-43aac990c339c0fc3304aa476ebc8ea8467f107e.tar.gz
emacs-43aac990c339c0fc3304aa476ebc8ea8467f107e.zip
Simplify EMACS_TIME-related code.
This portability layer is no longer needed, since Emacs has been using struct timespec as a portability layer for some time. Merge from gnulib, incorporating: 2013-08-27 timespec: new convenience constants and function * src/atimer.h, src/buffer.h, src/dispextern.h, src/xgselect.h: Include <time.h> rather than "systime.h"; that's all that's needed now. * src/dispnew.c: Include <timespec.h> rather than "systime.h"; that's all that's needed now. * src/systime.h (EMACS_TIME): Remove. All uses changed to struct timespec. (EMACS_TIME_RESOLUTION): Remove. All uses changed to TIMESPEC_RESOLUTION. (LOG10_EMACS_TIME_RESOLUTION): Remove. All uses changed to LOG10_TIMESPEC_RESOLUTION. (EMACS_SECS, emacs_secs_addr): Remove. All uses changed to tv_sec. (EMACS_NSECS): Remove. All uses changed to tv_nsec. (make_emacs_time): Remove. All used changed to make_timespec. (invalid_timespec): Rename from invalid_emacs_time. All uses changed. (current_timespec): Rename from current_emacs_time. All uses changed. (add_emacs_time): Remove. All uses changed to timespec_add. (sub_emacs_time): Remove. All uses change dot timespec_sub. (EMACS_TIME_SIGN): Remove. All uses changed to timespec_sign. (timespec_valid_p): Rename from EMACS_TIME_VALID_P. All uses changed. (EMACS_TIME_FROM_DOUBLE): Remove. All uses changed to dtotimespec. (EMACS_TIME_TO_DOUBLE): Remove. All uses changed to timespectod. (current_timespec): Rename from current_emacs_time. All uses changed. (EMACS_TIME_EQ, EMACS_TIME_LT, EMACS_TIME_LE): Remove. All uses changed to timespec_cmp. * src/xgselect.c: Include <timespec.h>, since our .h files don't.
Diffstat (limited to 'src/msdos.c')
-rw-r--r--src/msdos.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/msdos.c b/src/msdos.c
index 6018f72bfae..3c78efbc47b 100644
--- a/src/msdos.c
+++ b/src/msdos.c
@@ -4055,7 +4055,7 @@ dos_yield_time_slice (void)
4055 because wait_reading_process_output takes care of that. */ 4055 because wait_reading_process_output takes care of that. */
4056int 4056int
4057sys_select (int nfds, SELECT_TYPE *rfds, SELECT_TYPE *wfds, SELECT_TYPE *efds, 4057sys_select (int nfds, SELECT_TYPE *rfds, SELECT_TYPE *wfds, SELECT_TYPE *efds,
4058 EMACS_TIME *timeout, void *ignored) 4058 struct timespec *timeout, void *ignored)
4059{ 4059{
4060 int check_input; 4060 int check_input;
4061 struct timespec t; 4061 struct timespec t;
@@ -4085,20 +4085,20 @@ sys_select (int nfds, SELECT_TYPE *rfds, SELECT_TYPE *wfds, SELECT_TYPE *efds,
4085 } 4085 }
4086 else 4086 else
4087 { 4087 {
4088 EMACS_TIME clnow, cllast, cldiff; 4088 struct timespec clnow, cllast, cldiff;
4089 4089
4090 gettime (&t); 4090 gettime (&t);
4091 cllast = make_emacs_time (t.tv_sec, t.tv_nsec); 4091 cllast = make_timespec (t.tv_sec, t.tv_nsec);
4092 4092
4093 while (!check_input || !detect_input_pending ()) 4093 while (!check_input || !detect_input_pending ())
4094 { 4094 {
4095 gettime (&t); 4095 gettime (&t);
4096 clnow = make_emacs_time (t.tv_sec, t.tv_nsec); 4096 clnow = make_timespec (t.tv_sec, t.tv_nsec);
4097 cldiff = sub_emacs_time (clnow, cllast); 4097 cldiff = timespec_sub (clnow, cllast);
4098 *timeout = sub_emacs_time (*timeout, cldiff); 4098 *timeout = timespec_sub (*timeout, cldiff);
4099 4099
4100 /* Stop when timeout value crosses zero. */ 4100 /* Stop when timeout value crosses zero. */
4101 if (EMACS_TIME_SIGN (*timeout) <= 0) 4101 if (timespec_sign (*timeout) <= 0)
4102 return 0; 4102 return 0;
4103 cllast = clnow; 4103 cllast = clnow;
4104 dos_yield_time_slice (); 4104 dos_yield_time_slice ();