diff options
| author | Paul Eggert | 2014-08-03 08:38:52 -0700 |
|---|---|---|
| committer | Paul Eggert | 2014-08-03 08:38:52 -0700 |
| commit | 308cc448e5d6ffd44c7ff366a99d34bbfb0e8c4d (patch) | |
| tree | 04e83c1f35b94135a52711a5934e752fffea5c3d /src/ChangeLog | |
| parent | 8f88f7d3c5da38cd2d781770b533dc6c93c52d59 (diff) | |
| download | emacs-308cc448e5d6ffd44c7ff366a99d34bbfb0e8c4d.tar.gz emacs-308cc448e5d6ffd44c7ff366a99d34bbfb0e8c4d.zip | |
Don't mishandle year-9999 dates.
* lisp/calendar/parse-time.el (parse-time-rules):
Allow years up to most-positive-fixnum.
* lisp/calendar/time-date.el (date-to-time):
Pass "Specified time is not representable" errors through.
* lisp/url/url-cookie.el (url-cookie-expired-p): Treat out-of-range
expiration dates as if they were far in the future.
* src/editfns.c (decode_time_components): Store an invalid timespec
on overflow, instead of returning false, so that the caller can
distinguish overflow from other errors.
(lisp_time_argument, lisp_seconds_argument): If the time is out
of range, signal a time overflow instead of an invalid time spec.
* src/keyboard.c (decode_timer): Treat time overflow like other
timespec errors.
Fixes: debbugs:18176
Diffstat (limited to 'src/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index dce13035766..b0768dd5489 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,14 @@ | |||
| 1 | 2014-08-03 Paul Eggert <eggert@cs.ucla.edu> | 1 | 2014-08-03 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 2 | ||
| 3 | Don't mishandle year-9999 dates (Bug#18176). | ||
| 4 | * editfns.c (decode_time_components): Store an invalid timespec | ||
| 5 | on overflow, instead of returning false, so that the caller can | ||
| 6 | distinguish overflow from other errors. | ||
| 7 | (lisp_time_argument, lisp_seconds_argument): If the time is out | ||
| 8 | of range, signal a time overflow instead of an invalid time spec. | ||
| 9 | * keyboard.c (decode_timer): Treat time overflow like other | ||
| 10 | timespec errors. | ||
| 11 | |||
| 3 | Avoid undefined behavior with signed left shift. | 12 | Avoid undefined behavior with signed left shift. |
| 4 | Caught by 'gcc -fsanitize=undefined'. | 13 | Caught by 'gcc -fsanitize=undefined'. |
| 5 | * dispextern.h, scroll.c (scrolling_max_lines_saved, scrolling_1): | 14 | * dispextern.h, scroll.c (scrolling_max_lines_saved, scrolling_1): |