aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@hornquist.se>2019-10-07 02:42:43 +0200
committerHugo Hörnquist <hugo@hornquist.se>2019-10-15 20:05:00 +0200
commitf05b67f3ea2e336375579f856a76e447306232c2 (patch)
tree1746d78b8a7b94452a6ff7a15b677b061ff6c483
parentIdentified timezone problem. (diff)
downloadcalp-f05b67f3ea2e336375579f856a76e447306232c2.tar.gz
calp-f05b67f3ea2e336375579f856a76e447306232c2.tar.xz
Thoughts about how to fix repeating of tz.timezone
-rw-r--r--module/vcomponent/timezone.scm10
1 files changed, 10 insertions, 0 deletions
diff --git a/module/vcomponent/timezone.scm b/module/vcomponent/timezone.scm
index a89c8c5c..6a1e3130 100644
--- a/module/vcomponent/timezone.scm
+++ b/module/vcomponent/timezone.scm
@@ -79,6 +79,16 @@
;; further condition. That feels like something that should be impossible, but
;; this is (human) time we are talking about.
(define-public (make-tz-set tz)
+
+ (let* ((repeating regular (partition repeating? events)))
+ (set! repeating (sort*! repeating time<? (extract 'DTSTART))
+ regular (sort*! regular time<? (extract 'DTSTART)))
+ (interleave-streams
+ ev-time<?
+ (cons (list->stream regular)
+ (map generate-recurrence-set repeating))))
+
+
(let ((strm (interleave-streams
ev-time<?
;; { DAYLIGHT, STANDARD }