]> git.eshelyaron.com Git - emacs.git/commitdiff
decoded-time-set-defaults now leaves DST alone
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 27 May 2022 19:19:43 +0000 (12:19 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 27 May 2022 19:19:59 +0000 (12:19 -0700)
* lisp/calendar/time-date.el (decoded-time-set-defaults):
Don’t mess with decoded-time-dst (Bug#55635).

lisp/calendar/time-date.el

index dc77a7c7e0a9feb9ab336c43d9e645b56bbe4b73..40374c3bb4ec70beccc5186f29bc87147d41faf7 100644 (file)
@@ -562,6 +562,9 @@ The default value is based on January 1st, 1970 at midnight.
 This year is used to guarantee portability; see Info
 node `(elisp) Time of Day'.
 
+Optional argument DEFAULT-ZONE specifies what time zone to
+default to when TIME's time zone is nil (meaning local time).
+
 TIME is modified and returned."
   (unless (decoded-time-second time)
     (setf (decoded-time-second time) 0))
@@ -577,13 +580,11 @@ TIME is modified and returned."
   (unless (decoded-time-year time)
     (setf (decoded-time-year time) 1970))
 
-  ;; When we don't have a time zone, default to DEFAULT-ZONE without
-  ;; DST if DEFAULT-ZONE if given, and to unknown DST otherwise.
   (unless (decoded-time-zone time)
-    (if default-zone
-       (progn (setf (decoded-time-zone time) default-zone)
-              (setf (decoded-time-dst time) nil))
-      (setf (decoded-time-dst time) -1)))
+    (setf (decoded-time-zone time) default-zone))
+
+  ;; Do not set decoded-time-weekday or decoded-time-dst,
+  ;; as encode-time can infer them well enough when unknown.
 
   time)