aboutsummaryrefslogtreecommitdiffstats
path: root/src/undo.c
diff options
context:
space:
mode:
authorPaul Eggert2012-07-10 16:24:36 -0700
committerPaul Eggert2012-07-10 16:24:36 -0700
commite9a9ae0350689d352c2bdfa3af0eb722f587b966 (patch)
tree10ed0298079b06838a525f0a4df780d7600e13fe /src/undo.c
parentffacb12679a1e001981c2e0f690b327eda652d04 (diff)
downloademacs-e9a9ae0350689d352c2bdfa3af0eb722f587b966.tar.gz
emacs-e9a9ae0350689d352c2bdfa3af0eb722f587b966.zip
EMACS_TIME simplification (Bug#11875).
This replaces macros (which typically do not work in GDB) with functions, typedefs and enums, making the code easier to debug. The functional style also makes code easier to read and maintain. * lib-src/profile.c (TV2): Remove no-longer-needed static var. * src/systime.h: Include <sys/time.h> on all hosts, not just if WINDOWSNT, since 'struct timeval' is needed in general. (EMACS_TIME): Now a typedef, not a macro. (EMACS_TIME_RESOLUTION, LOG10_EMACS_TIME_RESOLUTION): Now constants, not macros. (EMACS_SECS, EMACS_NSECS, EMACS_TIME_SIGN, EMACS_TIME_VALID_P) (EMACS_TIME_FROM_DOUBLE, EMACS_TIME_TO_DOUBLE, EMACS_TIME_EQ) (EMACS_TIME_NE, EMACS_TIME_GT, EMACS_TIME_GE, EMACS_TIME_LT) (EMACS_TIME_LE): Now functions, not macros. (EMACS_SET_SECS, EMACS_SET_NSECS, EMACS_SET_SECS_NSECS) (EMACS_SET_USECS, EMACS_SET_SECS_USECS): Remove these macros, which are not functions. All uses rewritten to use: (make_emacs_time): New function. (EMACS_SECS_ADDR, EMACS_SET_INVALID_TIME, EMACS_GET_TIME) (EMACS_ADD_TIME, EMACS_SUB_TIME): Remove these macros, which are not functions. All uses rewritten to use the following, respectively: (emacs_secs_addr, invalid_emacs_time, get_emacs_time) (add_emacs_time, sub_emacs_time): New functions. * src/atimer.c: Don't include <sys/time.h>, as "systime.h" does this. * src/fileio.c (Fcopy_file): * src/xterm.c (XTflash): Get the current time closer to when it's used. * src/makefile.w32-in ($(BLD)/atimer.$(O)): Update dependencies.
Diffstat (limited to 'src/undo.c')
-rw-r--r--src/undo.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/undo.c b/src/undo.c
index bada46563a0..c90e7b62405 100644
--- a/src/undo.c
+++ b/src/undo.c
@@ -517,9 +517,9 @@ Return what remains of the list. */)
517 && CONSP (XCDR (XCDR (XCDR (cdr)))) 517 && CONSP (XCDR (XCDR (XCDR (cdr))))
518 && INTEGERP (XCAR (XCDR (XCDR (XCDR (cdr))))) 518 && INTEGERP (XCAR (XCDR (XCDR (XCDR (cdr)))))
519 && XINT (XCAR (XCDR (XCDR (XCDR (cdr))))) < 0) 519 && XINT (XCAR (XCDR (XCDR (XCDR (cdr))))) < 0)
520 EMACS_SET_SECS_NSECS 520 mod_time =
521 (mod_time, 0, 521 (make_emacs_time
522 XINT (XCAR (XCDR (XCDR (XCDR (cdr))))) / 1000); 522 (0, XINT (XCAR (XCDR (XCDR (XCDR (cdr))))) / 1000));
523 else 523 else
524 mod_time = lisp_time_argument (cdr); 524 mod_time = lisp_time_argument (cdr);
525 525