diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2014-10-28 18:42:51 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2014-10-28 18:42:51 -0700 |
commit | 123ddec7f807f4bd7400bbbe08219afb02269c00 (patch) | |
tree | cac1153049785a70e015b32748521098956de5d8 /lisp | |
parent | 14e5809d3cc1fd89e50f88d5783219091596a271 (diff) | |
download | emacs-123ddec7f807f4bd7400bbbe08219afb02269c00.tar.gz |
Simplify use of current-time and friends.
* doc/misc/org.texi (Dynamic blocks):
* lisp/allout-widgets.el (allout-widgets-hook-error-handler):
* lisp/calendar/appt.el (appt-display-message):
* lisp/calendar/icalendar.el (icalendar--convert-float-to-ical):
* lisp/calendar/timeclock.el (timeclock-in, timeclock-when-to-leave)
(timeclock-last-period, timeclock-day-base):
* lisp/eshell/em-ls.el (eshell-ls-file):
* lisp/eshell/esh-util.el (eshell-parse-ange-ls):
* lisp/generic-x.el (named-database-print-serial):
* lisp/net/newst-backend.el (newsticker--get-news-by-url-callback)
(newsticker-get-news, newsticker--sentinel-work)
(newsticker--image-get, newsticker--image-sentinel):
* lisp/net/tramp-sh.el (tramp-get-remote-touch):
* lisp/progmodes/opascal.el (opascal-debug-log):
* lisp/textmodes/remember.el (remember-mail-date)
(remember-store-in-files):
* lisp/vc/vc-annotate.el (vc-annotate-display-autoscale)
(vc-default-annotate-current-time):
* lisp/vc/vc-bzr.el (vc-bzr-shelve-snapshot):
* lisp/vc/vc-cvs.el (vc-cvs-annotate-current-time):
* lisp/vc/vc-rcs.el (vc-rcs-annotate-current-time):
* lisp/url/url-util.el (url-get-normalized-date):
* lisp/erc/erc-backend.el (TOPIC):
* lisp/gnus/gnus-delay.el (gnus-delay-article):
* lisp/gnus/gnus-sum.el (gnus-summary-read-document):
* lisp/gnus/gnus-util.el (gnus-seconds-today, gnus-seconds-month):
* lisp/gnus/message.el (message-make-expires-date):
* lisp/org/org-archive.el (org-archive-subtree)
(org-archive-to-archive-sibling):
* lisp/org/org-clock.el (org-resolve-clocks, org-clock-get-sum-start)
(org-clock-special-range):
* lisp/org/org-timer.el (org-timer-seconds):
* lisp/org/org.el (org-read-date-analyze, org-get-cursor-date):
* lisp/org/ox-html.el (org-html-format-spec):
* lisp/org/ox-icalendar.el (org-icalendar--vtodo):
Omit unnecessary call to current-time.
* lisp/calendar/time-date.el (time-to-seconds) [!float-time]:
* lisp/calendar/timeclock.el (timeclock-time-to-date):
* lisp/vc/vc-annotate.el (vc-annotate-convert-time):
Use current time if arg is nil, to be compatible with float-time.
(time-date--day-in-year): New function, with most of the guts of
the old time-to-day-in-year.
(time-to-day-in-year): Use it.
(time-to-days): Use it, to avoid decoding the same time stamp twice.
* lisp/calendar/timeclock.el (timeclock-update-mode-line):
* lisp/cedet/srecode/args.el (srecode-semantic-handle-:time):
* lisp/gnus/gnus-util.el (gnus-seconds-year):
* lisp/org/org.el (org-get-cursor-date):
Don't call current-time twice to get the current time stamp,
as this can lead to inconsistent results.
* lisp/completion.el (cmpl-hours-since-origin):
* lisp/erc/erc.el (erc-emacs-time-to-erc-time):
* lisp/ido.el (ido-time-stamp):
* lisp/vc/vc-annotate.el (vc-annotate-convert-time):
Simplify by using float-time.
* lisp/completion.el (save-completions-to-file):
* lisp/url/url-cache.el (url-cache-prune-cache):
Rename local var to avoid confusion.
* lisp/gnus/gnus-util.el (gnus-float-time):
* lisp/net/rcirc.el (rcirc-float-time):
* lisp/org/org-compat.el (org-float-time):
Simplify to an alias because time-to-seconds now behaves like float-time
with respect to nil arg.
* lisp/subr.el (progress-reporter-do-update):
Don't call float-time unless needed.
* lisp/erc/erc.el (erc-current-time): Simplify by using erc-emacs-time-to-erc-time.
* lisp/org/org-clock.el (org-clock-get-table-data): Omit unnecessary, lossy
conversion from floating point to Emacs time and back.
(org-resolve-clocks): Prefer two-argument floor.
Diffstat (limited to 'lisp')
42 files changed, 239 insertions, 155 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 89d887b0f0b..1ddef8293b7 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,50 @@ +2014-10-29 Paul Eggert <eggert@cs.ucla.edu> + + Simplify use of current-time and friends. + * allout-widgets.el (allout-widgets-hook-error-handler): + * calendar/appt.el (appt-display-message): + * calendar/icalendar.el (icalendar--convert-float-to-ical): + * calendar/timeclock.el (timeclock-in, timeclock-when-to-leave) + (timeclock-last-period, timeclock-day-base): + * eshell/em-ls.el (eshell-ls-file): + * eshell/esh-util.el (eshell-parse-ange-ls): + * generic-x.el (named-database-print-serial): + * net/newst-backend.el (newsticker--get-news-by-url-callback) + (newsticker-get-news, newsticker--sentinel-work) + (newsticker--image-get, newsticker--image-sentinel): + * net/tramp-sh.el (tramp-get-remote-touch): + * progmodes/opascal.el (opascal-debug-log): + * textmodes/remember.el (remember-mail-date) + (remember-store-in-files): + * vc/vc-annotate.el (vc-annotate-display-autoscale) + (vc-default-annotate-current-time): + * vc/vc-bzr.el (vc-bzr-shelve-snapshot): + * vc/vc-cvs.el (vc-cvs-annotate-current-time): + * vc/vc-rcs.el (vc-rcs-annotate-current-time): + Omit unnecessary call to current-time. + * calendar/time-date.el (time-to-seconds) [!float-time]: + * vc/vc-annotate.el (vc-annotate-convert-time): + Use current time if arg is nil, to be compatible with float-time. + (time-date--day-in-year): New function, with most of the guts of + the old time-to-day-in-year. + (time-to-day-in-year): Use it. + (time-to-days): Use it, to avoid decoding the same time stamp twice. + * calendar/timeclock.el (timeclock-time-to-date): + Arg is now optional, like current-time-string. + (timeclock-update-mode-line): + Don't call current-time twice to get the current time stamp, + as this can lead to inconsistent results. + * completion.el (cmpl-hours-since-origin): + * ido.el (ido-time-stamp): + * vc/vc-annotate.el (vc-annotate-convert-time): + Simplify by using float-time. + * completion.el (save-completions-to-file): + Rename local var to avoid confusion. + * net/rcirc.el (rcirc-float-time): Simplify to an alias because + time-to-seconds now behaves like float-time with respect to nil arg. + * subr.el (progress-reporter-do-update): + Don't call float-time unless needed. + 2014-10-29 Leo Liu <sdl.web@gmail.com> * net/rcirc.el (rcirc-fill-column): Use function. diff --git a/lisp/allout-widgets.el b/lisp/allout-widgets.el index 66ec0c333a7..f2dcdb40425 100644 --- a/lisp/allout-widgets.el +++ b/lisp/allout-widgets.el @@ -902,7 +902,7 @@ encompassing condition-case." (header (format "allout-widgets-last-hook-error stored, %s/%s %s %s" this mode args - (format-time-string "%e-%b-%Y %r" (current-time))))) + (format-time-string "%e-%b-%Y %r")))) ;; post to *Messages* then immediately replace with more compact notice: (message "%s" (setq allout-widgets-last-hook-error (format "%s:\n%s" header bt))) diff --git a/lisp/calendar/appt.el b/lisp/calendar/appt.el index c90a20d92ca..7e32d890e15 100644 --- a/lisp/calendar/appt.el +++ b/lisp/calendar/appt.el @@ -228,7 +228,7 @@ also calls `beep' for an audible reminder." string (car string))) (cond ((eq appt-display-format 'window) ;; TODO use calendar-month-abbrev-array rather than %b? - (let ((time (format-time-string "%a %b %e " (current-time))) + (let ((time (format-time-string "%a %b %e ")) err) (condition-case err (funcall appt-disp-window-function diff --git a/lisp/calendar/icalendar.el b/lisp/calendar/icalendar.el index 43610036861..5f89318e139 100644 --- a/lisp/calendar/icalendar.el +++ b/lisp/calendar/icalendar.el @@ -1682,7 +1682,7 @@ entries. ENTRY-MAIN is the first line of the diary entry." (cons (concat ;;Start today (yes this is an arbitrary choice): "\nDTSTART;VALUE=DATE:" - (format-time-string "%Y%m%d" (current-time)) + (format-time-string "%Y%m%d") ;;BUT remove today if `diary-float' ;;expression does not hold true for today: (when @@ -1691,7 +1691,7 @@ entries. ENTRY-MAIN is the first line of the diary entry." (diary-float month dayname n))) (concat "\nEXDATE;VALUE=DATE:" - (format-time-string "%Y%m%d" (current-time)))) + (format-time-string "%Y%m%d"))) "\nRRULE:" (if (or (numberp month) (listp month)) "FREQ=YEARLY;BYMONTH=" diff --git a/lisp/calendar/time-date.el b/lisp/calendar/time-date.el index 48fe2294354..82bc05f299f 100644 --- a/lisp/calendar/time-date.el +++ b/lisp/calendar/time-date.el @@ -44,7 +44,7 @@ The value of the last form in BODY is returned. Each element of the list VARLIST is a list of the form \(HIGH-SYMBOL LOW-SYMBOL MICRO-SYMBOL [PICO-SYMBOL [TYPE-SYMBOL]] TIME-VALUE). -The time value TIME-VALUE is decoded and the result it bound to +The time value TIME-VALUE is decoded and the result is bound to the symbols HIGH-SYMBOL, LOW-SYMBOL and MICRO-SYMBOL. The optional PICO-SYMBOL is bound to the picoseconds part. @@ -147,10 +147,12 @@ If DATE lacks timezone information, GMT is assumed." (or (featurep 'emacs) (and (fboundp 'float-time) (subrp (symbol-function 'float-time))) - (defun time-to-seconds (time) - "Convert time value TIME to a floating point number." - (with-decoded-time-value ((high low micro pico type time)) - (+ (* 1.0 high 65536) + (defun time-to-seconds (&optional time) + "Convert optional value TIME to a floating point number. +TIME defaults to the current time." + (with-decoded-time-value ((high low micro pico type + (or time (current-time)))) + (+ (* high 65536.0) low (/ (+ (* micro 1e6) pico) 1e12)))))) @@ -272,11 +274,9 @@ DATE1 and DATE2 should be date-time strings." (not (zerop (% year 100)))) (zerop (% year 400)))) -;;;###autoload -(defun time-to-day-in-year (time) - "Return the day number within the year corresponding to TIME." - (let* ((tim (decode-time time)) - (month (nth 4 tim)) +(defun time-date--day-in-year (tim) + "Return the day number within the year corresponding to the decoded time TIM." + (let* ((month (nth 4 tim)) (day (nth 3 tim)) (year (nth 5 tim)) (day-of-year (+ day (* 31 (1- month))))) @@ -287,13 +287,18 @@ DATE1 and DATE2 should be date-time strings." day-of-year)) ;;;###autoload +(defun time-to-day-in-year (time) + "Return the day number within the year corresponding to TIME." + (time-date--day-in-year (decode-time time))) + +;;;###autoload (defun time-to-days (time) "The number of days between the Gregorian date 0001-12-31bce and TIME. TIME should be a time value. The Gregorian date Sunday, December 31, 1bce is imaginary." (let* ((tim (decode-time time)) (year (nth 5 tim))) - (+ (time-to-day-in-year time) ; Days this year + (+ (time-date--day-in-year tim) ; Days this year (* 365 (1- year)) ; + Days in prior years (/ (1- year) 4) ; + Julian leap years (- (/ (1- year) 100)) ; - century years diff --git a/lisp/calendar/timeclock.el b/lisp/calendar/timeclock.el index 2b4db9a7820..fb69357b1b4 100644 --- a/lisp/calendar/timeclock.el +++ b/lisp/calendar/timeclock.el @@ -320,7 +320,7 @@ display (non-nil means on)." (cancel-timer timeclock-update-timer) (setq timeclock-update-timer nil)))) -(defsubst timeclock-time-to-date (time) +(defsubst timeclock-time-to-date (&optional time) "Convert the TIME value to a textual date string." (format-time-string "%Y/%m/%d" time)) @@ -351,7 +351,7 @@ discover the name of the project." (unless (and timeclock-last-event (equal (timeclock-time-to-date (cadr timeclock-last-event)) - (timeclock-time-to-date (current-time)))) + (timeclock-time-to-date))) (let ((workday (or (and (numberp arg) arg) (and arg 0) (and timeclock-get-workday-function @@ -543,7 +543,7 @@ non-nil, the amount returned will be relative to past time worked." If TODAY-ONLY is non-nil, the value returned will be relative only to the time worked today, and not to past time." (timeclock-seconds-to-time - (- (timeclock-time-to-seconds (current-time)) + (- (timeclock-time-to-seconds) (let ((discrep (timeclock-find-discrep))) (if discrep (if today-only @@ -647,14 +647,12 @@ that variable's documentation." (if timeclock-use-elapsed (timeclock-workday-elapsed) (timeclock-workday-remaining (not timeclock-relative)))) - (last-in (equal (car timeclock-last-event) "i"))) + (last-in (equal (car timeclock-last-event) "i")) + (todays-date (timeclock-time-to-date))) (when (and (< remainder 0) (not (and timeclock-day-over - (equal timeclock-day-over - (timeclock-time-to-date - (current-time)))))) - (setq timeclock-day-over - (timeclock-time-to-date (current-time))) + (equal timeclock-day-over todays-date)))) + (setq timeclock-day-over todays-date) (run-hooks 'timeclock-day-over-hook)) (setq timeclock-mode-string (propertize @@ -725,9 +723,8 @@ recorded to disk. If MOMENT is non-nil, use that as the current time. This is only provided for coherency when used by `timeclock-discrepancy'." (if (equal (car timeclock-last-event) "i") - (- (timeclock-time-to-seconds (or moment (current-time))) - (timeclock-time-to-seconds - (cadr timeclock-last-event))) + (- (timeclock-time-to-seconds moment) + (timeclock-time-to-seconds (cadr timeclock-last-event))) timeclock-last-period)) (defsubst timeclock-entry-length (entry) @@ -1156,7 +1153,7 @@ discrepancy, today's discrepancy, and the time worked today." (+ timeclock-last-period timeclock-elapsed))))) (setq timeclock-last-event event timeclock-last-event-workday - (if (equal (timeclock-time-to-date now) last-date-limited) + (if (equal todays-date last-date-limited) last-date-seconds timeclock-workday)) (forward-line)) @@ -1182,7 +1179,7 @@ discrepancy, today's discrepancy, and the time worked today." (defun timeclock-day-base (&optional time) "Given a time within a day, return 0:0:0 within that day. If optional argument TIME is non-nil, use that instead of the current time." - (let ((decoded (decode-time (or time (current-time))))) + (let ((decoded (decode-time time))) (setcar (nthcdr 0 decoded) 0) (setcar (nthcdr 1 decoded) 0) (setcar (nthcdr 2 decoded) 0) diff --git a/lisp/cedet/ChangeLog b/lisp/cedet/ChangeLog index d19bae5be30..8e911cfe6d6 100644 --- a/lisp/cedet/ChangeLog +++ b/lisp/cedet/ChangeLog @@ -1,3 +1,10 @@ +2014-10-29 Paul Eggert <eggert@cs.ucla.edu> + + Simplify use of current-time and friends. + * srecode/args.el (srecode-semantic-handle-:time): + Don't call current-time twice to get the current time stamp, + as this can lead to inconsistent results. + 2014-10-24 Stefan Monnier <monnier@iro.umontreal.ca> * semantic/complete.el: Require semantic/db-find. diff --git a/lisp/cedet/srecode/args.el b/lisp/cedet/srecode/args.el index b4977f0882e..8c03e17d7b3 100644 --- a/lisp/cedet/srecode/args.el +++ b/lisp/cedet/srecode/args.el @@ -101,35 +101,35 @@ do not contain any text from preceding or following text." (defun srecode-semantic-handle-:time (dict) "Add macros into the dictionary DICT based on the current :time." ;; DATE Values - (srecode-dictionary-set-value - dict "YEAR" (format-time-string "%Y" (current-time))) - (srecode-dictionary-set-value - dict "MONTHNAME" (format-time-string "%B" (current-time))) - (srecode-dictionary-set-value - dict "MONTH" (format-time-string "%m" (current-time))) - (srecode-dictionary-set-value - dict "DAY" (format-time-string "%d" (current-time))) - (srecode-dictionary-set-value - dict "WEEKDAY" (format-time-string "%a" (current-time))) - ;; Time Values - (srecode-dictionary-set-value - dict "HOUR" (format-time-string "%H" (current-time))) - (srecode-dictionary-set-value - dict "HOUR12" (format-time-string "%l" (current-time))) - (srecode-dictionary-set-value - dict "AMPM" (format-time-string "%p" (current-time))) - (srecode-dictionary-set-value - dict "MINUTE" (format-time-string "%M" (current-time))) - (srecode-dictionary-set-value - dict "SECOND" (format-time-string "%S" (current-time))) - (srecode-dictionary-set-value - dict "TIMEZONE" (format-time-string "%Z" (current-time))) - ;; Convenience pre-packed date/time - (srecode-dictionary-set-value - dict "DATE" (format-time-string "%D" (current-time))) - (srecode-dictionary-set-value - dict "TIME" (format-time-string "%X" (current-time))) - ) + (let ((now (current-time))) + (srecode-dictionary-set-value + dict "YEAR" (format-time-string "%Y" now)) + (srecode-dictionary-set-value + dict "MONTHNAME" (format-time-string "%B" now)) + (srecode-dictionary-set-value + dict "MONTH" (format-time-string "%m" now)) + (srecode-dictionary-set-value + dict "DAY" (format-time-string "%d" now)) + (srecode-dictionary-set-value + dict "WEEKDAY" (format-time-string "%a" now)) + ;; Time Values + (srecode-dictionary-set-value + dict "HOUR" (format-time-string "%H" now)) + (srecode-dictionary-set-value + dict "HOUR12" (format-time-string "%l" now)) + (srecode-dictionary-set-value + dict "AMPM" (format-time-string "%p" now)) + (srecode-dictionary-set-value + dict "MINUTE" (format-time-string "%M" now)) + (srecode-dictionary-set-value + dict "SECOND" (format-time-string "%S" now)) + (srecode-dictionary-set-value + dict "TIMEZONE" (format-time-string "%Z" now)) + ;; Convenience pre-packed date/time + (srecode-dictionary-set-value + dict "DATE" (format-time-string "%D" now)) + (srecode-dictionary-set-value + dict "TIME" (format-time-string "%X" now)))) ;;; :file ARGUMENT HANDLING ;; diff --git a/lisp/completion.el b/lisp/completion.el index 7e5c2143870..d2d94e778d5 100644 --- a/lisp/completion.el +++ b/lisp/completion.el @@ -435,8 +435,7 @@ Used to decide whether to save completions.") (defun cmpl-hours-since-origin () - (let ((time (current-time))) - (floor (+ (* 65536.0 (nth 0 time)) (nth 1 time)) 3600))) + (floor (float-time) 3600)) ;;--------------------------------------------------------------------------- ;; "Symbol" parsing functions @@ -1950,7 +1949,7 @@ If file name is not specified, use `save-completions-file-name'." (kept-old-versions 0) (kept-new-versions completions-file-versions-kept) last-use-time - (current-time (cmpl-hours-since-origin)) + (this-use-time (cmpl-hours-since-origin)) (total-in-db 0) (total-perm 0) (total-saved 0) @@ -1982,13 +1981,13 @@ If file name is not specified, use `save-completions-file-name'." ;; or if (if (> (completion-num-uses completion) 0) ;; it's been used - (setq last-use-time current-time) + (setq last-use-time this-use-time) ;; or it was saved before and (and last-use-time ;; save-completions-retention-time is nil (or (not save-completions-retention-time) ;; or time since last use is < ...retention-time* - (< (- current-time last-use-time) + (< (- this-use-time last-use-time) save-completions-retention-time))))) ;; write to file (setq total-saved (1+ total-saved)) diff --git a/lisp/erc/ChangeLog b/lisp/erc/ChangeLog index efa3219db07..75a01581fcd 100644 --- a/lisp/erc/ChangeLog +++ b/lisp/erc/ChangeLog @@ -1,3 +1,10 @@ +2014-10-29 Paul Eggert <eggert@cs.ucla.edu> + + Simplify use of current-time and friends. + * erc-backend.el (TOPIC): Omit unnecessary call to current-time. + * erc.el (erc-emacs-time-to-erc-time): Simplify by using float-time. + (erc-current-time): Simplify by using erc-emacs-time-to-erc-time. + 2014-10-20 Glenn Morris <rgm@gnu.org> * Merge in all changes up to 24.4 release. diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el index 8751a194e3b..fb22f58822d 100644 --- a/lisp/erc/erc-backend.el +++ b/lisp/erc/erc-backend.el @@ -1465,8 +1465,7 @@ add things to `%s' instead." "The channel topic has changed." nil (let* ((ch (car (erc-response.command-args parsed))) (topic (erc-trim-string (erc-response.contents parsed))) - (time (format-time-string erc-server-timestamp-format - (current-time)))) + (time (format-time-string erc-server-timestamp-format))) (pcase-let ((`(,nick ,login ,host) (erc-parse-user (erc-response.sender parsed)))) (erc-update-channel-member ch nick nick nil nil nil nil nil nil host login) diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el index c70dfb94d7e..9363d4a8262 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el @@ -5956,17 +5956,15 @@ Returns a list of the form (HIGH LOW), compatible with Emacs time format." (list (truncate (/ n 65536)) (truncate (mod n 65536))))) -(defun erc-emacs-time-to-erc-time (time) - "Convert Emacs TIME to a number of seconds since the epoch." - (when time - (+ (* (nth 0 time) 65536.0) (nth 1 time)))) -; (round (+ (* (nth 0 tm) 65536.0) (nth 1 tm)))) +(defalias 'erc-emacs-time-to-erc-time + (if (featurep 'xemacs) 'time-to-seconds 'float-time) + "Convert time value TIME to a floating point number. +TIME defaults to the current time.") -(defun erc-current-time () +(defalias 'erc-current-time 'erc-emacs-time-to-erc-time "Return the `current-time' as a number of seconds since the epoch. -See also `erc-emacs-time-to-erc-time'." - (erc-emacs-time-to-erc-time (current-time))) +See also `erc-emacs-time-to-erc-time'.") (defun erc-time-diff (t1 t2) "Return the time difference in seconds between T1 and T2." diff --git a/lisp/eshell/em-ls.el b/lisp/eshell/em-ls.el index faba9088ecd..4ddf8862618 100644 --- a/lisp/eshell/em-ls.el +++ b/lisp/eshell/em-ls.el @@ -490,7 +490,7 @@ whose cdr is the list of file attributes." " " (format-time-string (concat eshell-ls-date-format " " - (if (= (nth 5 (decode-time (current-time))) + (if (= (nth 5 (decode-time)) (nth 5 (decode-time (nth (cond ((eq sort-method 'by-atime) 4) diff --git a/lisp/eshell/esh-util.el b/lisp/eshell/esh-util.el index cd73c0afa75..53f642510f2 100644 --- a/lisp/eshell/esh-util.el +++ b/lisp/eshell/esh-util.el @@ -653,7 +653,7 @@ If NOSORT is non-nil, the list is not sorted--its order is unpredictable. (match-string 6)))) (if (nth 0 moment) (setcar (nthcdr 5 moment) - (nth 5 (decode-time (current-time)))) + (nth 5 (decode-time))) (setcar (nthcdr 0 moment) 0) (setcar (nthcdr 1 moment) 0) (setcar (nthcdr 2 moment) 0)) diff --git a/lisp/generic-x.el b/lisp/generic-x.el index 21b429781f9..c14700b9a1e 100644 --- a/lisp/generic-x.el +++ b/lisp/generic-x.el @@ -1650,7 +1650,7 @@ like an INI file. You can add this hook to `find-file-hook'." (defun named-database-print-serial () "Print a serial number based on the current date." (interactive) - (insert (format-time-string named-database-time-string (current-time))))) + (insert (format-time-string named-database-time-string)))) (when (memq 'resolve-conf-generic-mode generic-extras-enable-list) diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 04253780783..cc38aabeec7 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,16 @@ +2014-10-29 Paul Eggert <eggert@cs.ucla.edu> + + Simplify use of current-time and friends. + * gnus-delay.el (gnus-delay-article): + * gnus-sum.el (gnus-summary-read-document): + * gnus-util.el (gnus-seconds-today, gnus-seconds-month): + * message.el (message-make-expires-date): + Omit unnecessary call to current-time. + * gnus-util.el (gnus-float-time): Simplify to an alias because + time-to-seconds now behaves like float-time with respect to nil arg. + (gnus-seconds-year): Don't call current-time twice to get the current + time stamp, as this can lead to inconsistent results. + 2014-10-27 Katsumi Yamaoka <yamaoka@jpl.org> * gnus.el (gnus-mode-line-buffer-identification): diff --git a/lisp/gnus/gnus-delay.el b/lisp/gnus/gnus-delay.el index 75b967e2d48..2a286dabcbc 100644 --- a/lisp/gnus/gnus-delay.el +++ b/lisp/gnus/gnus-delay.el @@ -98,7 +98,7 @@ DELAY is a string, giving the length of the time. Possible values are: (setq hour (string-to-number (match-string 1 delay)) minute (string-to-number (match-string 2 delay))) ;; Use current time, except... - (setq deadline (apply 'vector (decode-time (current-time)))) + (setq deadline (apply 'vector (decode-time))) ;; ... for minute and hour. (aset deadline 1 minute) (aset deadline 2 hour) diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el index db0242ef42b..55a263d0d79 100644 --- a/lisp/gnus/gnus-sum.el +++ b/lisp/gnus/gnus-sum.el @@ -9333,7 +9333,7 @@ Obeys the standard process/prefix convention." ((gnus-group-read-ephemeral-group (setq vgroup (format "nnvirtual:%s-%s" gnus-newsgroup-name - (format-time-string "%Y%m%dT%H%M%S" (current-time)))) + (format-time-string "%Y%m%dT%H%M%S"))) `(nnvirtual ,vgroup (nnvirtual-component-groups ,groups)) t (cons (current-buffer) 'summary))) diff --git a/lisp/gnus/gnus-util.el b/lisp/gnus/gnus-util.el index fe4d707be2e..15f3aede889 100644 --- a/lisp/gnus/gnus-util.el +++ b/lisp/gnus/gnus-util.el @@ -313,14 +313,12 @@ Symbols are also allowed; their print names are used instead." ;; Every version of Emacs Gnus supports has built-in float-time. ;; The featurep test silences an irritating compiler warning. -(eval-and-compile +(defalias 'gnus-float-time (if (or (featurep 'emacs) (fboundp 'float-time)) - (defalias 'gnus-float-time 'float-time) - (defun gnus-float-time (&optional time) - "Convert time value TIME to a floating point number. -TIME defaults to the current time." - (time-to-seconds (or time (current-time)))))) + 'float-time 'time-to-seconds) + "Convert time value TIME to a floating point number. +TIME defaults to the current time.") ;;; Keymap macros. @@ -389,19 +387,20 @@ TIME defaults to the current time." (defun gnus-seconds-today () "Return the number of seconds passed today." - (let ((now (decode-time (current-time)))) + (let ((now (decode-time))) (+ (car now) (* (car (cdr now)) 60) (* (car (nthcdr 2 now)) 3600)))) (defun gnus-seconds-month () "Return the number of seconds passed this month." - (let ((now (decode-time (current-time)))) + (let ((now (decode-time))) (+ (car now) (* (car (cdr now)) 60) (* (car (nthcdr 2 now)) 3600) (* (- (car (nthcdr 3 now)) 1) 3600 24)))) (defun gnus-seconds-year () "Return the number of seconds passed this year." - (let ((now (decode-time (current-time))) - (days (format-time-string "%j" (current-time)))) + (let* ((current (current-time)) + (now (decode-time current)) + (days (format-time-string "%j" current))) (+ (car now) (* (car (cdr now)) 60) (* (car (nthcdr 2 now)) 3600) (* (- (string-to-number days) 1) 3600 24)))) diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index 1cec37e15dc..3cd9e93366c 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el @@ -5550,7 +5550,7 @@ If NOW, use that time instead." "Make date string for the Expires header. Expiry in DAYS days. In posting styles use `(\"Expires\" (make-expires-date 30))'." - (let* ((cur (decode-time (current-time))) + (let* ((cur (decode-time)) (nday (+ days (nth 3 cur)))) (setf (nth 3 cur) nday) (message-make-date (apply 'encode-time cur)))) diff --git a/lisp/ido.el b/lisp/ido.el index b16ab1f91a6..bda2525b629 100644 --- a/lisp/ido.el +++ b/lisp/ido.el @@ -1306,8 +1306,7 @@ Only used if `ido-use-virtual-buffers' is non-nil.") (defun ido-time-stamp (&optional time) ;; Time is a floating point number (fractions of 1 hour) - (setq time (or time (current-time))) - (/ (+ (* (car time) 65536.0) (car (cdr time))) 3600.0)) + (/ (float-time time) 3600)) (defun ido-cache-ftp-valid (&optional time) (and (numberp ido-cache-ftp-work-directory-time) diff --git a/lisp/net/newst-backend.el b/lisp/net/newst-backend.el index 00d595c977f..ba100534085 100644 --- a/lisp/net/newst-backend.el +++ b/lisp/net/newst-backend.el @@ -757,7 +757,7 @@ from." ) ((eq status-type :error) (message "%s: Error while retrieving news from %s: %s: \"%s\"" - (format-time-string "%A, %H:%M" (current-time)) + (format-time-string "%A, %H:%M") feed-name (car status-details) (cdr status-details)))))))) @@ -787,7 +787,7 @@ See `newsticker-get-news'." FEED-NAME must be a string which occurs as the label (i.e. the first element) in an element of `newsticker-url-list' or `newsticker-url-list-defaults'." (newsticker--debug-msg "%s: Getting news for %s" - (format-time-string "%A, %H:%M" (current-time)) + (format-time-string "%A, %H:%M") feed-name) (let* ((item (or (assoc feed-name newsticker-url-list) (assoc feed-name newsticker-url-list-defaults) @@ -845,14 +845,14 @@ Argument BUFFER is the buffer of the retrieval process." (concat "%s: Newsticker could not retrieve news from %s.\n" "Return status: `%s'\n" "Command was `%s'") - (format-time-string "%A, %H:%M" (current-time)) + (format-time-string "%A, %H:%M") feed-name event command) "" (current-time) 'new 0 nil)) (message "%s: Error while retrieving news from %s" - (format-time-string "%A, %H:%M" (current-time)) + (format-time-string "%A, %H:%M") feed-name) (throw 'oops nil)) (let* ((coding-system 'utf-8) @@ -1020,7 +1020,7 @@ Argument BUFFER is the buffer of the retrieval process." (defun newsticker--do-xml-workarounds () "Fix all issues which `xml-parse-region' could be choking on." - + ;; a very very dirty workaround to overcome the ;; problems with the newest (20030621) xml.el: ;; remove all unnecessary whitespace @@ -1808,11 +1808,11 @@ download it from URL first." (time-add (nth 5 (file-attributes image-name)) (seconds-to-time 86400)))) (newsticker--debug-msg "%s: Getting image for %s skipped" - (format-time-string "%A, %H:%M" (current-time)) + (format-time-string "%A, %H:%M") feed-name) ;; download (newsticker--debug-msg "%s: Getting image for %s" - (format-time-string "%A, %H:%M" (current-time)) + (format-time-string "%A, %H:%M") feed-name) (if (eq newsticker-retrieval-method 'intern) (newsticker--image-download-by-url feed-name filename directory url) @@ -1859,7 +1859,7 @@ Save image as FILENAME in DIRECTORY, download it from URL." (unless (and (eq p-status 'exit) (= exit-status 0)) (message "%s: Error while retrieving image from %s" - (format-time-string "%A, %H:%M" (current-time)) + (format-time-string "%A, %H:%M") feed-name) (newsticker--image-remove directory feed-name) (throw 'oops nil)) diff --git a/lisp/net/rcirc.el b/lisp/net/rcirc.el index 388c2b2879c..858fad4c060 100644 --- a/lisp/net/rcirc.el +++ b/lisp/net/rcirc.el @@ -599,10 +599,10 @@ If ARG is non-nil, instead prompt for connection parameters." `(with-current-buffer rcirc-server-buffer ,@body)) -(defun rcirc-float-time () +(defalias 'rcirc-float-time (if (featurep 'xemacs) - (time-to-seconds (current-time)) - (float-time))) + 'time-to-seconds + 'float-time)) (defun rcirc-prompt-for-encryption (server-plist) "Prompt the user for the encryption method to use. diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el index ce5e2faff50..1976e0e7f66 100644 --- a/lisp/net/tramp-sh.el +++ b/lisp/net/tramp-sh.el @@ -5213,7 +5213,7 @@ Return ATTR." (format "%s -t %s %s" result - (format-time-string "%Y%m%d%H%M.%S" (current-time)) + (format-time-string "%Y%m%d%H%M.%S") (tramp-file-name-handler 'file-remote-p tmpfile 'localname)))) (delete-file tmpfile)) result))) diff --git a/lisp/org/ChangeLog b/lisp/org/ChangeLog index 0f28ef0df92..0f50e574171 100644 --- a/lisp/org/ChangeLog +++ b/lisp/org/ChangeLog @@ -1,3 +1,24 @@ +2014-10-29 Paul Eggert <eggert@cs.ucla.edu> + + Simplify use of current-time and friends. + * org-archive.el (org-archive-subtree) + (org-archive-to-archive-sibling): + * org-clock.el (org-resolve-clocks, org-clock-get-sum-start) + (org-clock-special-range): + * org-timer.el (org-timer-seconds): + * org.el (org-read-date-analyze, org-get-cursor-date): + * ox-html.el (org-html-format-spec): + * ox-icalendar.el (org-icalendar--vtodo): + Omit unnecessary call to current-time. + * org-clock.el (org-clock-get-table-data): Omit unnecessary, lossy + conversion from floating point to Emacs time and back. + (org-resolve-clocks): Prefer two-argument floor. + * org-compat.el (org-float-time): Simplify to an alias because + time-to-seconds now behaves like float-time with respect to nil arg. + * org.el (org-get-cursor-date): + Don't call current-time twice to get the current time stamp, + as this can lead to inconsistent results. + 2014-10-20 Glenn Morris <rgm@gnu.org> * Merge in all changes up to 24.4 release. diff --git a/lisp/org/org-archive.el b/lisp/org/org-archive.el index 6deac47ba8e..87471a9cea9 100644 --- a/lisp/org/org-archive.el +++ b/lisp/org/org-archive.el @@ -231,8 +231,7 @@ this heading." (error "No file associated to buffer")))) (olpath (mapconcat 'identity (org-get-outline-path) "/")) (time (format-time-string - (substring (cdr org-time-stamp-formats) 1 -1) - (current-time))) + (substring (cdr org-time-stamp-formats) 1 -1))) category todo priority ltags itags atags ;; end of variables that will be used for saving context location afile heading buffer level newfile-p infile-p visiting @@ -441,8 +440,7 @@ sibling does not exist, it will be created at the end of the subtree." (org-set-property "ARCHIVE_TIME" (format-time-string - (substring (cdr org-time-stamp-formats) 1 -1) - (current-time))) + (substring (cdr org-time-stamp-formats) 1 -1))) (outline-up-heading 1 t) (hide-subtree) (org-cycle-show-empty-lines 'folded) diff --git a/lisp/org/org-clock.el b/lisp/org/org-clock.el index 1bbe8506531..51c87892a9c 100644 --- a/lisp/org/org-clock.el +++ b/lisp/org/org-clock.el @@ -1046,9 +1046,9 @@ If `only-dangling-p' is non-nil, only ask to resolve dangling (lambda (clock) (format "Dangling clock started %d mins ago" - (floor - (/ (- (org-float-time (current-time)) - (org-float-time (cdr clock))) 60)))))) + (floor (- (org-float-time) + (org-float-time (cdr clock))) + 60))))) (or last-valid (cdr clock))))))))))) @@ -1368,7 +1368,7 @@ decides which time to use." (current-time)) ((equal cmt "today") (setq org--msg-extra "showing today's task time.") - (let* ((dt (decode-time (current-time)))) + (let* ((dt (decode-time))) (setq dt (append (list 0 0 0) (nthcdr 3 dt))) (if org-extend-today-until (setf (nth 2 dt) org-extend-today-until)) @@ -2029,7 +2029,7 @@ If MSTART is non-nil, use this number to specify the starting day of a month (1 is the first day of the month). If you can combine both, the month starting day will have priority." (if (integerp key) (setq key (intern (number-to-string key)))) - (let* ((tm (decode-time (or time (current-time)))) + (let* ((tm (decode-time time)) (s 0) (m (nth 1 tm)) (h (nth 2 tm)) (d (nth 3 tm)) (month (nth 4 tm)) (y (nth 5 tm)) (dow (nth 6 tm)) @@ -2670,10 +2670,8 @@ TIME: The sum of all time spend in this tree, in minutes. This time (when (and te (listp te)) (setq te (format "%4d-%02d-%02d" (nth 2 te) (car te) (nth 1 te)))) ;; Now the times are strings we can parse. - (if ts (setq ts (org-float-time - (seconds-to-time (org-matcher-time ts))))) - (if te (setq te (org-float-time - (seconds-to-time (org-matcher-time te))))) + (if ts (setq ts (org-matcher-time ts))) + (if te (setq te (org-matcher-time te))) (save-excursion (org-clock-sum ts te (unless (null matcher) diff --git a/lisp/org/org-compat.el b/lisp/org/org-compat.el index 4466b0be80d..122658970f5 100644 --- a/lisp/org/org-compat.el +++ b/lisp/org/org-compat.el @@ -411,12 +411,10 @@ Pass BUFFER to the XEmacs version of `move-to-column'." (when focus-follows-mouse (set-mouse-position frame (1- (frame-width frame)) 0))))) -(defun org-float-time (&optional time) +(defalias 'org-float-time + (if (featurep 'xemacs) 'time-to-seconds 'float-time) "Convert time value TIME to a floating point number. -TIME defaults to the current time." - (if (featurep 'xemacs) - (time-to-seconds (or time (current-time))) - (float-time time))) +TIME defaults to the current time.") ;; `user-error' is only available from 24.2.50 on (unless (fboundp 'user-error) diff --git a/lisp/org/org-timer.el b/lisp/org/org-timer.el index 8161699f316..b22db7bc6fa 100644 --- a/lisp/org/org-timer.el +++ b/lisp/org/org-timer.el @@ -195,8 +195,8 @@ it in the buffer." (defun org-timer-seconds () (if org-timer-timer-is-countdown (- (org-float-time org-timer-start-time) - (org-float-time (current-time))) - (- (org-float-time (or org-timer-pause-time (current-time))) + (org-float-time)) + (- (org-float-time org-timer-pause-time) (org-float-time org-timer-start-time)))) ;;;###autoload diff --git a/lisp/org/org.el b/lisp/org/org.el index 1604241f6b3..30bb98d98ed 100644 --- a/lisp/org/org.el +++ b/lisp/org/org.el @@ -16490,7 +16490,7 @@ user." (defun org-read-date-analyze (ans org-def org-defdecode) "Analyze the combined answer of the date prompt." ;; FIXME: cleanup and comment - (let ((nowdecode (decode-time (current-time))) + (let ((nowdecode (decode-time)) delta deltan deltaw deltadef year month day hour minute second wday pm h2 m2 tl wday1 iso-year iso-weekday iso-week iso-year iso-date futurep kill-year) @@ -16648,7 +16648,7 @@ user." (deltan (setq futurep nil) (unless deltadef - (let ((now (decode-time (current-time)))) + (let ((now (decode-time))) (setq day (nth 3 now) month (nth 4 now) year (nth 5 now)))) (cond ((member deltaw '("d" "")) (setq day (+ day deltan))) ((equal deltaw "w") (setq day (+ day (* 7 deltan)))) @@ -22062,8 +22062,9 @@ the agenda) or the current time of the day." (when (and tp (string-match "\\([0-9][0-9]\\):\\([0-9][0-9]\\)" tp)) (setq hod (string-to-number (match-string 1 tp)) mod (string-to-number (match-string 2 tp)))) - (or tp (setq hod (nth 2 (decode-time (current-time))) - mod (nth 1 (decode-time (current-time)))))) + (or tp (let ((now (decode-time))) + (setq hod (nth 2 now) + mod (nth 1 now))))) (cond ((eq major-mode 'calendar-mode) (setq date (calendar-cursor-to-date) diff --git a/lisp/org/ox-html.el b/lisp/org/ox-html.el index 21f34810f15..a3f0b501da6 100644 --- a/lisp/org/ox-html.el +++ b/lisp/org/ox-html.el @@ -1630,8 +1630,7 @@ used in the preamble or postamble." (?c . ,(plist-get info :creator)) (?C . ,(let ((file (plist-get info :input-file))) (format-time-string org-html-metadata-timestamp-format - (if file (nth 5 (file-attributes file)) - (current-time))))) + (if file (nth 5 (file-attributes file)))))) (?v . ,(or org-html-validation-link "")))) (defun org-html--build-pre/postamble (type info) diff --git a/lisp/org/ox-icalendar.el b/lisp/org/ox-icalendar.el index cd48bbf9aef..38bdcf95dd2 100644 --- a/lisp/org/ox-icalendar.el +++ b/lisp/org/ox-icalendar.el @@ -678,7 +678,7 @@ Return VTODO component as a string." (org-element-property :scheduled entry)) ;; If we can't use a scheduled time for some ;; reason, start task now. - (let ((now (decode-time (current-time)))) + (let ((now (decode-time))) (list 'timestamp (list :type 'active :minute-start (nth 1 now) diff --git a/lisp/progmodes/opascal.el b/lisp/progmodes/opascal.el index fd8e249bbb9..2f3704be6fa 100644 --- a/lisp/progmodes/opascal.el +++ b/lisp/progmodes/opascal.el @@ -1397,7 +1397,7 @@ If before the indent, the point is moved to the indent." (when opascal-debug (opascal-ensure-buffer opascal-debug-buffer "*OPascal Debug Log*") (opascal-log-msg opascal-debug-buffer - (concat (format-time-string "%H:%M:%S " (current-time)) + (concat (format-time-string "%H:%M:%S ") (apply #'format (cons format-string args)) "\n")))) diff --git a/lisp/subr.el b/lisp/subr.el index edf59b88941..55ff739fec5 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -4507,11 +4507,10 @@ NEW-MESSAGE, if non-nil, sets a new message for the reporter." (min-value (aref parameters 1)) (max-value (aref parameters 2)) (text (aref parameters 3)) - (current-time (float-time)) (enough-time-passed ;; See if enough time has passed since the last update. (or (not update-time) - (when (>= current-time update-time) + (when (>= (float-time) update-time) ;; Calculate time for the next update (aset parameters 0 (+ update-time (aref parameters 5))))))) (cond ((and min-value max-value) diff --git a/lisp/textmodes/remember.el b/lisp/textmodes/remember.el index 95b947481b5..260e7abfff3 100644 --- a/lisp/textmodes/remember.el +++ b/lisp/textmodes/remember.el @@ -319,9 +319,7 @@ With a prefix or a visible region, use the region as INITIAL." (defsubst remember-mail-date (&optional rfc822-p) "Return a simple date. Nothing fancy." - (if rfc822-p - (format-time-string "%a, %e %b %Y %T %z" (current-time)) - (format-time-string "%a %b %e %T %Y" (current-time)))) + (format-time-string (if rfc822-p "%a, %e %b %Y %T %z" "%a %b %e %T %Y"))) (defun remember-buffer-desc () "Using the first line of the current buffer, create a short description." @@ -461,8 +459,7 @@ Used by `remember-store-in-files'." "Store remember data in a file in `remember-data-directory'. The file is named by calling `format-time-string' using `remember-directory-file-name-format' as the format string." - (let ((name (format-time-string - remember-directory-file-name-format (current-time))) + (let ((name (format-time-string remember-directory-file-name-format)) (text (buffer-string))) (with-temp-buffer (insert text) diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog index 26e1dd1756d..12972ea04ab 100644 --- a/lisp/url/ChangeLog +++ b/lisp/url/ChangeLog @@ -1,3 +1,11 @@ +2014-10-29 Paul Eggert <eggert@cs.ucla.edu> + + Simplify use of current-time and friends. + * url-cache.el (url-cache-prune-cache): + Rename local var to avoid confusion. + * url-util.el (url-get-normalized-date): + Omit unnecessary call to current-time. + 2014-10-20 Glenn Morris <rgm@gnu.org> * Merge in all changes up to 24.4 release. diff --git a/lisp/url/url-cache.el b/lisp/url/url-cache.el index 50ce38f064b..9b634bd4b0c 100644 --- a/lisp/url/url-cache.el +++ b/lisp/url/url-cache.el @@ -212,7 +212,7 @@ If `url-standalone-mode' is non-nil, cached items never expire." "Remove all expired files from the cache. `url-cache-expire-time' says how old a file has to be to be considered \"expired\"." - (let ((current-time (current-time)) + (let ((now (current-time)) (total-files 0) (deleted-files 0)) (setq directory (or directory url-cache-directory)) @@ -228,7 +228,7 @@ considered \"expired\"." (time-add (nth 5 (file-attributes file)) (seconds-to-time url-cache-expire-time)) - current-time) + now) (delete-file file) (setq deleted-files (1+ deleted-files)))))) (if (< deleted-files total-files) diff --git a/lisp/url/url-util.el b/lisp/url/url-util.el index b796e769c60..f7d2d4410d9 100644 --- a/lisp/url/url-util.el +++ b/lisp/url/url-util.el @@ -189,8 +189,7 @@ Will not do anything if `url-show-status' is nil." (defun url-get-normalized-date (&optional specified-time) "Return a 'real' date string that most HTTP servers can understand." (let ((system-time-locale "C")) - (format-time-string "%a, %d %b %Y %T GMT" - (or specified-time (current-time)) t))) + (format-time-string "%a, %d %b %Y %T GMT" specified-time t))) ;;;###autoload (defun url-eat-trailing-space (x) diff --git a/lisp/vc/vc-annotate.el b/lisp/vc/vc-annotate.el index 580e7727a06..e270ec401ba 100644 --- a/lisp/vc/vc-annotate.el +++ b/lisp/vc/vc-annotate.el @@ -253,7 +253,7 @@ cover the range from the oldest annotation to the newest." (interactive "P") (let ((newest 0.0) (oldest 999999.) ;Any CVS users at the founding of Rome? - (current (vc-annotate-convert-time (current-time))) + (current (vc-annotate-convert-time)) date) (message "Redisplaying annotation...") ;; Run through this file and find the oldest and newest dates annotated. @@ -664,11 +664,10 @@ nil if no such cell exists." (setq i (+ i 1))) tmp-cons)) ; Return the appropriate value -(defun vc-annotate-convert-time (time) - "Convert a time value to a floating-point number of days. -The argument TIME is a list as returned by `current-time' or -`encode-time', only the first two elements of that list are considered." - (/ (+ (* (float (car time)) (lsh 1 16)) (cadr time)) 24 3600)) +(defun vc-annotate-convert-time (&optional time) + "Convert optional value TIME to a floating-point number of days. +TIME defaults to the current time." + (/ (float-time time) 86400)) (defun vc-annotate-difference (&optional offset) "Return the time span in days to the next annotation. @@ -683,7 +682,7 @@ or OFFSET if present." (defun vc-default-annotate-current-time (_backend) "Return the current time, encoded as fractional days." - (vc-annotate-convert-time (current-time))) + (vc-annotate-convert-time)) (defvar vc-annotate-offset nil) diff --git a/lisp/vc/vc-bzr.el b/lisp/vc/vc-bzr.el index 4693998dfaf..a093bcb6b92 100644 --- a/lisp/vc/vc-bzr.el +++ b/lisp/vc/vc-bzr.el @@ -1167,10 +1167,7 @@ stream. Standard error output is discarded." "Create a stash with the current tree state." (interactive) (vc-bzr-command "shelve" nil 0 nil "--all" "-m" - (let ((ct (current-time))) - (concat - (format-time-string "Snapshot on %Y-%m-%d" ct) - (format-time-string " at %H:%M" ct)))) + (format-time-string "Snapshot on %Y-%m-%d at %H:%M")) (vc-bzr-command "unshelve" nil 0 nil "--apply" "--keep") (vc-resynch-buffer (vc-bzr-root default-directory) t t)) diff --git a/lisp/vc/vc-cvs.el b/lisp/vc/vc-cvs.el index f7684a3b82c..ad5559bb699 100644 --- a/lisp/vc/vc-cvs.el +++ b/lisp/vc/vc-cvs.el @@ -605,7 +605,7 @@ Optional arg REVISION is a revision to annotate from." "Return the current time, based at midnight of the current day, and encoded as fractional days." (vc-annotate-convert-time - (apply 'encode-time 0 0 0 (nthcdr 3 (decode-time (current-time)))))) + (apply 'encode-time 0 0 0 (nthcdr 3 (decode-time))))) (defun vc-cvs-annotate-time () "Return the time of the next annotation (as fraction of days) diff --git a/lisp/vc/vc-rcs.el b/lisp/vc/vc-rcs.el index 6b064260f95..57515d04dc7 100644 --- a/lisp/vc/vc-rcs.el +++ b/lisp/vc/vc-rcs.el @@ -811,7 +811,7 @@ Optional arg REVISION is a revision to annotate from." "Return the current time, based at midnight of the current day, and encoded as fractional days." (vc-annotate-convert-time - (apply #'encode-time 0 0 0 (nthcdr 3 (decode-time (current-time)))))) + (apply #'encode-time 0 0 0 (nthcdr 3 (decode-time))))) (defun vc-rcs-annotate-time () "Return the time of the next annotation (as fraction of days) |