diff options
| author | Paul Eggert | 2011-03-12 22:43:00 -0800 |
|---|---|---|
| committer | Paul Eggert | 2011-03-12 22:43:00 -0800 |
| commit | d32df629a23d0e04eb70df9c6e60e821d905c822 (patch) | |
| tree | 6eca6f59412dc798b055e5dec45188f5e7f3929a /src/ChangeLog | |
| parent | 4248cca2de96a6732a233e9c1d13c6336b215705 (diff) | |
| parent | 313c1e544ab88d0ca95015b30e23dfbabe36a2ac (diff) | |
| download | emacs-d32df629a23d0e04eb70df9c6e60e821d905c822.tar.gz emacs-d32df629a23d0e04eb70df9c6e60e821d905c822.zip | |
Improve quality of tests for time stamp overflow.
Diffstat (limited to 'src/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index a3098114388..1bc1e113846 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,35 @@ | |||
| 1 | 2011-03-13 Paul Eggert <eggert@cs.ucla.edu> | ||
| 2 | |||
| 3 | Improve quality of tests for time stamp overflow. | ||
| 4 | For example, without this patch (encode-time 0 0 0 1 1 | ||
| 5 | 1152921504606846976) returns the obviously-bogus value (-948597 | ||
| 6 | 62170) on my RHEL 5.5 x86-64 host. With the patch, it correctly | ||
| 7 | reports time overflow. See | ||
| 8 | <http://lists.gnu.org/archive/html/emacs-devel/2011-03/msg00470.html>. | ||
| 9 | * deps.mk (editfns.o): Depend on ../lib/intprops.h. | ||
| 10 | * editfns.c: Include limits.h and intprops.h. | ||
| 11 | (TIME_T_MIN, TIME_T_MAX): New macros. | ||
| 12 | (time_overflow): Move earlier, to before first use. | ||
| 13 | (hi_time, lo_time): New functions, for an accurate test for | ||
| 14 | out-of-range times. | ||
| 15 | (Fcurrent_time, Fget_internal_run_time, make_time): Use them. | ||
| 16 | (Fget_internal_run_time): Don't assume time_t fits in int. | ||
| 17 | (make_time): Use list2 instead of Fcons twice. | ||
| 18 | (Fdecode_time): More accurate test for out-of-range times. | ||
| 19 | (check_tm_member): New function. | ||
| 20 | (Fencode_time): Use it, to test for out-of-range times. | ||
| 21 | (lisp_time_argument): Don't rely on undefined left-shift and | ||
| 22 | right-shift behavior when checking for time stamp overflow. | ||
| 23 | |||
| 24 | * editfns.c (time_overflow): New function, refactoring common code. | ||
| 25 | (Fformat_time_string, Fdecode_time, Fencode_time): | ||
| 26 | (Fcurrent_time_string): Use it. | ||
| 27 | |||
| 28 | Move 'make_time' to be next to its inverse 'lisp_time_argument'. | ||
| 29 | * dired.c (make_time): Move to ... | ||
| 30 | * editfns.c (make_time): ... here. | ||
| 31 | * systime.h: Note the move. | ||
| 32 | |||
| 1 | 2011-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | 33 | 2011-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> |
| 2 | 34 | ||
| 3 | * fringe.c (update_window_fringes): Remove unused variables. | 35 | * fringe.c (update_window_fringes): Remove unused variables. |