* Re: bug#27736: OSX 10.6.8: Building from master branch fails.
[not found] ` <ef99767e-50b8-0740-17c9-c93f12f6a79e@cs.ucla.edu>
@ 2018-03-28 22:08 ` Paul Eggert
0 siblings, 0 replies; only message in thread
From: Paul Eggert @ 2018-03-28 22:08 UTC (permalink / raw)
To: Glenn Morris
Cc: 27736, Keith David Bershatsky, Charles A. Roelli, emacs-org list,
Noam Postavsky
[-- Attachment #1: Type: text/plain, Size: 482 bytes --]
On 03/28/2018 12:33 PM, Paul Eggert wrote:
> Unfortunately the new org code contains the expression (encode-time 0
> 0 0 0 0 -50000), which won't work on Emacs platforms where time_t is
> 32 bits or is unsigned, since such platforms cannot represent a time_t
> value corresponding to the year -50000.
I installed the attached patch into Emacs master to try to fix this.
I'll CC: this to emacs-orgmode in the hopes that this won't get lost in
the next merge to Emacs master.
[-- Attachment #2: 0001-Port-recent-org-clock-fix-to-POSIX-time_t.patch --]
[-- Type: text/x-patch, Size: 1751 bytes --]
From 43994e484fadac28682542e75548e80cbb80987d Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Wed, 28 Mar 2018 15:03:40 -0700
Subject: [PATCH] Port recent org-clock fix to POSIX time_t
* lisp/org/org-clock.el (org-clock-special-range):
Don't assume support for time_t values less than 0, or less than
-2**31 for that matter (Bug#27736).
---
lisp/org/org-clock.el | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/lisp/org/org-clock.el b/lisp/org/org-clock.el
index ff32e28d1e..9be0d5bc1f 100644
--- a/lisp/org/org-clock.el
+++ b/lisp/org/org-clock.el
@@ -2239,8 +2239,18 @@ org-clock-special-range
(let* ((start (pcase key
(`interactive (org-read-date nil t nil "Range start? "))
;; In theory, all clocks started after the dawn of
- ;; humanity.
- (`untilnow (encode-time 0 0 0 0 0 -50000))
+ ;; humanity. However, the platform's clock
+ ;; support might not go back that far. Choose the
+ ;; POSIX timestamp -2**41 (approximately 68,000
+ ;; BCE) if that works, otherwise -2**31 (1901) if
+ ;; that works, otherwise 0 (1970). Going back
+ ;; billions of years would loop forever on Mac OS
+ ;; X 10.6 with Emacs 26 and earlier (Bug#27736).
+ (`untilnow
+ (let ((old 0))
+ (dolist (older '((-32768 0) (-33554432 0)) old)
+ (when (ignore-errors (decode-time older))
+ (setq old older)))))
(_ (encode-time 0 m h d month y))))
(end (pcase key
(`interactive (org-read-date nil t nil "Range end? "))
--
2.14.3
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2018-03-28 22:08 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <m2a8432iso.wl%esq@lawlist.com>
[not found] ` <46d25462-4eb0-0bd0-f5ab-2b28bae98ee6@cs.ucla.edu>
[not found] ` <exo9j8f7ff.fsf@fencepost.gnu.org>
[not found] ` <ef99767e-50b8-0740-17c9-c93f12f6a79e@cs.ucla.edu>
2018-03-28 22:08 ` bug#27736: OSX 10.6.8: Building from master branch fails Paul Eggert
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).