* fileio.c (Fverify_visited_file_modtime): Avoid time overflow
authorPaul Eggert <eggert@cs.ucla.edu>
Mon, 6 Jun 2011 05:57:31 +0000 (22:57 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Mon, 6 Jun 2011 05:57:31 +0000 (22:57 -0700)
if b->modtime has its maximal value.

src/ChangeLog
src/fileio.c

index 4269bf4..f86b0de 100644 (file)
@@ -1,5 +1,8 @@
 2011-06-06  Paul Eggert  <eggert@cs.ucla.edu>
 
+       * fileio.c (Fverify_visited_file_modtime): Avoid time overflow
+       if b->modtime has its maximal value.
+
        * dired.c (Ffile_attributes): Don't assume EMACS_INT has >32 bits.
 
        Don't assume time_t can fit into int.
index 94894b9..48dac80 100644 (file)
@@ -4960,7 +4960,7 @@ See Info node `(elisp)Modification Time' for more details.  */)
   if ((st.st_mtime == b->modtime
        /* If both are positive, accept them if they are off by one second.  */
        || (st.st_mtime > 0 && b->modtime > 0
-          && (st.st_mtime == b->modtime + 1
+          && (st.st_mtime - 1 == b->modtime
               || st.st_mtime == b->modtime - 1)))
       && (st.st_size == b->modtime_size
           || b->modtime_size < 0))