diff options
author | Hugo Hörnquist <hugo@lysator.liu.se> | 2020-03-29 23:25:20 +0200 |
---|---|---|
committer | Hugo Hörnquist <hugo@lysator.liu.se> | 2020-03-29 23:25:20 +0200 |
commit | 9d471cd6cdd182c01bb6d7a7c7e0318a2daa3372 (patch) | |
tree | 0bcc9ef8150e56a810704c6f27dc02aa23104609 /module/vcomponent/recurrence/generate.scm | |
parent | Change some calendar names in example config. (diff) | |
download | calp-9d471cd6cdd182c01bb6d7a7c7e0318a2daa3372.tar.gz calp-9d471cd6cdd182c01bb6d7a7c7e0318a2daa3372.tar.xz |
Clarify error on bad RRULE's.
Diffstat (limited to '')
-rw-r--r-- | module/vcomponent/recurrence/generate.scm | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/module/vcomponent/recurrence/generate.scm b/module/vcomponent/recurrence/generate.scm index ce64e741..ee59ed04 100644 --- a/module/vcomponent/recurrence/generate.scm +++ b/module/vcomponent/recurrence/generate.scm @@ -120,7 +120,7 @@ ((e r) (or (and (not (until r)) (not (count r))) ; Never ending (and=> (count r) (negate zero?)) ; COUNT - (and=> (until r) (lambda (dt) ((if (date? dt) date<= date/-time<=) ; UNTIL + (and=> (until r) (lambda (dt) ((if (date? dt) date<= datetime<=) ; UNTIL (attr e 'DTSTART) dt)))))) ;; Event x Rule → next (Event, Rule) @@ -155,10 +155,11 @@ (date-difference end (attr event 'DTSTART)) (datetime-difference end (attr event 'DTSTART))))])) (if (attr event "RRULE") - (recur-event-stream event (parse-recurrence-rule - (attr event "RRULE") - (if (eq? 'DATE (and=> (prop (attr* event 'DTSTART) 'VALUE) car)) - parse-date parse-datetime))) + (recur-event-stream + event (parse-recurrence-rule + (attr event "RRULE") + (if (date? (attr event 'DTSTART)) + parse-date parse-datetime))) ;; TODO some events STANDARD and DAYLIGT doesn't have RRULE's, but rather ;; just mention the current part. Handle this stream-null)))) |