From 84acfcf06be242f35063c719ca5643ad969437fd Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 1 Jun 2011 23:15:15 -0700 Subject: [PATCH] Don't assume time_t can fit into int. * buffer.h (struct buffer.modtime): Now time_t, not int. * fileio.c (Fvisited_file_modtime): No need for time_t cast now. * undo.c (Fprimitive_undo): Use time_t, not int, for time_t value. --- src/ChangeLog | 5 +++++ src/buffer.h | 2 +- src/fileio.c | 2 +- src/undo.c | 2 +- 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 6e12a97d64..1c97b0ac9f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,10 @@ 2011-06-02 Paul Eggert + Don't assume time_t can fit into int. + * buffer.h (struct buffer.modtime): Now time_t, not int. + * fileio.c (Fvisited_file_modtime): No need for time_t cast now. + * undo.c (Fprimitive_undo): Use time_t, not int, for time_t value. + Minor fixes for signed vs unsigned integers. * character.h (MAYBE_UNIFY_CHAR): * charset.c (maybe_unify_char): diff --git a/src/buffer.h b/src/buffer.h index 2f33065cd1..8c64a24e80 100644 --- a/src/buffer.h +++ b/src/buffer.h @@ -545,7 +545,7 @@ struct buffer -1 means visited file was nonexistent. 0 means visited file modtime unknown; in no case complain about any mismatch on next save attempt. */ - int modtime; + time_t modtime; /* Size of the file when modtime was set. This is used to detect the case where the file grew while we were reading it, so the modtime is still the same (since it's rounded up to seconds) but we're actually diff --git a/src/fileio.c b/src/fileio.c index 7e6fd8c82a..94894b97a6 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -4990,7 +4990,7 @@ See Info node `(elisp)Modification Time' for more details. */) { if (! current_buffer->modtime) return make_number (0); - return make_time ((time_t) current_buffer->modtime); + return make_time (current_buffer->modtime); } DEFUN ("set-visited-file-modtime", Fset_visited_file_modtime, diff --git a/src/undo.c b/src/undo.c index 80aff50d18..142960545a 100644 --- a/src/undo.c +++ b/src/undo.c @@ -500,7 +500,7 @@ Return what remains of the list. */) { /* Element (t high . low) records previous modtime. */ Lisp_Object high, low; - int mod_time; + time_t mod_time; struct buffer *base_buffer = current_buffer; high = Fcar (cdr); -- 2.20.1