aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/calendar/parse-time.el
diff options
context:
space:
mode:
authorPaul Eggert2014-08-03 08:38:52 -0700
committerPaul Eggert2014-08-03 08:38:52 -0700
commit308cc448e5d6ffd44c7ff366a99d34bbfb0e8c4d (patch)
tree04e83c1f35b94135a52711a5934e752fffea5c3d /lisp/calendar/parse-time.el
parent8f88f7d3c5da38cd2d781770b533dc6c93c52d59 (diff)
downloademacs-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 'lisp/calendar/parse-time.el')
-rw-r--r--lisp/calendar/parse-time.el2
1 files changed, 1 insertions, 1 deletions
diff --git a/lisp/calendar/parse-time.el b/lisp/calendar/parse-time.el
index 6bfccec94c6..6c88210030b 100644
--- a/lisp/calendar/parse-time.el
+++ b/lisp/calendar/parse-time.el
@@ -131,7 +131,7 @@
131 `(((6) parse-time-weekdays) 131 `(((6) parse-time-weekdays)
132 ((3) (1 31)) 132 ((3) (1 31))
133 ((4) parse-time-months) 133 ((4) parse-time-months)
134 ((5) (100 4038)) 134 ((5) (100 ,most-positive-fixnum))
135 ((2 1 0) 135 ((2 1 0)
136 ,#'(lambda () (and (stringp parse-time-elt) 136 ,#'(lambda () (and (stringp parse-time-elt)
137 (= (length parse-time-elt) 8) 137 (= (length parse-time-elt) 8)