diff options
author | Hugo Hörnquist <hugo@hornquist.se> | 2019-10-03 23:22:24 +0200 |
---|---|---|
committer | Hugo Hörnquist <hugo@hornquist.se> | 2019-10-03 23:22:24 +0200 |
commit | d42ba61061a105389796b4aa36194e74dce83e40 (patch) | |
tree | 2dc663fd3db27c15e4175705ee727e9756a26ab9 /module | |
parent | Locate bug with DTEND. (diff) | |
download | calp-d42ba61061a105389796b4aa36194e74dce83e40.tar.gz calp-d42ba61061a105389796b4aa36194e74dce83e40.tar.xz |
Fix problem with no end date.
Diffstat (limited to '')
-rw-r--r-- | module/vcomponent.scm | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/module/vcomponent.scm b/module/vcomponent.scm index c2e65d19..9bd70689 100644 --- a/module/vcomponent.scm +++ b/module/vcomponent.scm @@ -48,14 +48,18 @@ (define date (parse-datetime (value dptr))) (define end-date - (begin (format #t "end-date, file = ~a~%" (attr ev 'X-HNH-FILENAME)) - ;; It's here it crashes! - ;; (value eptr) - ;; /home/hugo/.local/var/cal/lithekod_styrelse/9cd19ed2ac0f68f68c405010e43bcf3a5fd6ca01e8f2e0ccf909a0f2fa96532f.ics - ;; An object apparently doesn't need to have a DTEND... - (aif (value eptr) - (parse-datetime it) - (set (date-hour date) = (+ 1))))) + (cond [(not eptr) + (format #t "date = ~a~%" date) + (let ((d (set (date-hour date) = (+ 1)))) + (set! (attr ev 'DTEND) d + eptr (attr* ev 'DTEND)) + d + )] + [(value eptr) => parse-datetime] + [else + (format #t "date = ~a~%" date) + (set (date-hour date) = (+ 1))]) + ) (format #t "ev = ~a~%file = ~a~%" ev (attr ev 'X-HNH-FILENAME)) @@ -64,6 +68,8 @@ (set! (value dptr) (date->time-utc date) (value eptr) (date->time-utc end-date)) + (format #t "After first set") + (when (prop (attr* ev 'DTSTART) 'TZID) (set! (zone-offset date) (get-tz-offset ev) (value dptr) (date->time-utc date) |