[PATCHv2] emacs: derive correct timestamp in FCC unique name
Tomi Ollila
tomi.ollila at iki.fi
Thu Jun 14 12:04:58 PDT 2012
On Thu, Jun 14 2012, Jesse Rosenthal <jrosenthal at jhu.edu> wrote:
> Previously, the timestamp at the beginning of the FCC unique maildir
> name was derived incorrectly, thanks to an integer overflow. This
> changes the derivation of timestamp to use a float, and so will get
> the number correct at least until 2038. (It is still formatted with
> "%d" so it will show up as an integer.) Should we need to change it in
> the next 26 years to take the unix millenium into account, it will be
> invisible to users.
>
> This change is mostly a question of consistency, since the unique name
> is arbitrary anyway. But since most people use timestamps, and that was
> the original intention here as well, we might as well.
>
> Signed-off-by: Jesse Rosenthal <jrosenthal at jhu.edu>
> ---
+1
Tomi
> emacs/notmuch-maildir-fcc.el | 7 +++----
> 1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/emacs/notmuch-maildir-fcc.el b/emacs/notmuch-maildir-fcc.el
> index dcfbc4b..07eedba 100644
> --- a/emacs/notmuch-maildir-fcc.el
> +++ b/emacs/notmuch-maildir-fcc.el
> @@ -140,13 +140,12 @@ will NOT be removed or replaced."
> t))
>
> (defun notmuch-maildir-fcc-make-uniq-maildir-id ()
> - (let* ((ct (current-time))
> - (timeid (+ (* (car ct) 65536) (cadr ct)))
> - (microseconds (car (cdr (cdr ct))))
> + (let* ((ftime (float-time))
> + (microseconds (mod (* 1000000 ftime) 1000000))
> (hostname (notmuch-maildir-fcc-host-fixer system-name)))
> (setq notmuch-maildir-fcc-count (+ notmuch-maildir-fcc-count 1))
> (format "%d.%d_%d_%d.%s"
> - timeid
> + ftime
> (emacs-pid)
> microseconds
> notmuch-maildir-fcc-count
> --
> 1.7.9.5
>
> _______________________________________________
> notmuch mailing list
> notmuch at notmuchmail.org
> http://notmuchmail.org/mailman/listinfo/notmuch
More information about the notmuch
mailing list