X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/4628bef1eea0f60e846fe6b6591725aa92952de9..7a20ebe5ca884954e34c5129f70c211fef266369:/lisp/calendar/cal-dst.el diff --git a/lisp/calendar/cal-dst.el b/lisp/calendar/cal-dst.el index d27bc8480a..84831e7bee 100644 --- a/lisp/calendar/cal-dst.el +++ b/lisp/calendar/cal-dst.el @@ -1,7 +1,6 @@ ;;; cal-dst.el --- calendar functions for daylight saving rules -;; Copyright (C) 1993, 1994, 1995, 1996, 2001, 2002, 2003, 2004, 2005, -;; 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +;; Copyright (C) 1993-1996, 2001-2016 Free Software Foundation, Inc. ;; Author: Paul Eggert ;; Edward M. Reingold @@ -83,7 +82,7 @@ list and for correcting times of day in the solar and lunar calculations. For example, if daylight saving time ends on the last Sunday in October: - '(calendar-nth-named-day -1 0 10 year) + (calendar-nth-named-day -1 0 10 year) If the locale never uses daylight saving time, set this to nil." :type 'sexp @@ -180,6 +179,7 @@ Return nil if no such transition can be found." (if (eq (car (current-time-zone probe)) hi-utc-diff) (setq hi probe) (setq lo probe))) + (setcdr hi (list (cdr hi))) hi)))) (autoload 'calendar-persian-to-absolute "cal-persia") @@ -348,8 +348,8 @@ DST-ZONE are equal, and all the DST-* integer variables are 0. Some operating systems cannot provide all this information to Emacs; in this case, `calendar-current-time-zone' returns a list containing nil for the data it can't find." - (unless calendar-current-time-zone-cache - (setq calendar-current-time-zone-cache (calendar-dst-find-data)))) + (or calendar-current-time-zone-cache + (setq calendar-current-time-zone-cache (calendar-dst-find-data)))) ;; Following options should be set based on conditions when the code @@ -446,16 +446,12 @@ Fractional part of DATE is local standard time of day." (or (<= dst-starts date) (< date dst-ends)))))) ;; used by calc, lunar, solar. -(defun dst-adjust-time (date time &optional style) +(defun dst-adjust-time (date time) "Adjust, to account for dst on DATE, decimal fraction standard TIME. Returns a list (date adj-time zone) where `date' and `adj-time' are the values adjusted for `zone'; here `date' is a list (month day year), `adj-time' is a decimal fraction time, and `zone' is a string. -Optional parameter STYLE forces the result time to be standard time when its -value is 'standard and daylight saving time (if available) when its value is -'daylight. - Conversion to daylight saving time is done according to `calendar-daylight-savings-starts', `calendar-daylight-savings-ends', `calendar-daylight-savings-starts-time', @@ -474,5 +470,4 @@ Conversion to daylight saving time is done according to (provide 'cal-dst) -;; arch-tag: a141d204-213c-4ca5-bdc6-f9df3aa92aad ;;; cal-dst.el ends here