Backport commit bd49b6f1b from Emacs

* lisp/org-clock.el (org-clock--oldest-date): Only execute
'decode-time' on times later than year -2**31 under macOS 10.6.
See Bug#27706.

Workaround for faulty localtime() under macOS 10.6
bd49b6f1b39cffeaf6098bc7b0182552683b1c07
Charles A. Roelli
Sun Oct 1 19:07:22 2017 +0200
This commit is contained in:
Charles A. Roelli 2017-09-30 20:42:03 +02:00 committed by Kyle Meyer
parent 5d3e17bf85
commit 24ea1b136a
1 changed files with 11 additions and 1 deletions

View File

@ -478,7 +478,17 @@ to add an effort property.")
(funcall dichotomy
most-negative-fixnum
0
(lambda (m) (ignore-errors (decode-time (list m 0))))))
(lambda (m)
;; libc in macOS 10.6 hangs when decoding times
;; around year -2**31. Limit `high' not to go
;; any earlier than that.
(unless (and (eq system-type 'darwin)
(string-match-p
"10\\.6\\.[[:digit:]]"
(shell-command-to-string
"sw_vers -productVersion"))
(<= m -1034058203136))
(ignore-errors (decode-time (list m 0)))))))
(low
(funcall dichotomy
most-negative-fixnum