summaryrefslogtreecommitdiff
path: root/lisp/gnus/gnus-icalendar.el
diff options
context:
space:
mode:
authorAlexandre Duret-Lutz <adl@lrde.epita.fr>2021-09-22 22:28:28 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2021-10-01 14:07:58 +0200
commit6c0824f711906cd0413b14d7dfc35a5bf411eb52 (patch)
treea33060296d9ab8db784b8452a4273709becaf8ae /lisp/gnus/gnus-icalendar.el
parent16e51ad6bfa9275ebf9fc2df49eb724099ca2764 (diff)
downloademacs-6c0824f711906cd0413b14d7dfc35a5bf411eb52.tar.gz
default role for attendees is REQ-PARTICIPANT
* lisp/gnus/gnus-icalendar.el (gnus-icalendar-event--get-attendee-names, gnus-icalendar-event-from-ical): When the ROLE property is missing from an ATTENDEE line, follow RFC5546 and default to REQ-PARTICIPANT.
Diffstat (limited to 'lisp/gnus/gnus-icalendar.el')
-rw-r--r--lisp/gnus/gnus-icalendar.el7
1 files changed, 5 insertions, 2 deletions
diff --git a/lisp/gnus/gnus-icalendar.el b/lisp/gnus/gnus-icalendar.el
index 348da12db11..a2ae2a96689 100644
--- a/lisp/gnus/gnus-icalendar.el
+++ b/lisp/gnus/gnus-icalendar.el
@@ -194,7 +194,9 @@
(caddr event))))
(cl-labels
- ((attendee-role (prop) (plist-get (cadr prop) 'ROLE))
+ ((attendee-role (prop)
+ ;; RFC5546: default ROLE is REQ-PARTICIPANT
+ (or (plist-get (cadr prop) 'ROLE) "REQ-PARTICIPANT"))
(attendee-name
(prop)
(or (plist-get (cadr prop) 'CN)
@@ -225,7 +227,8 @@
(gnus-icalendar-event--find-attendee
ical attendee-name-or-email)))
(attendee-names (gnus-icalendar-event--get-attendee-names ical))
- (role (plist-get (cadr attendee) 'ROLE))
+ ;; RFC5546: default ROLE is REQ-PARTICIPANT
+ (role (or (plist-get (cadr attendee) 'ROLE) "REQ-PARTICIPANT"))
(participation-type (pcase role
("REQ-PARTICIPANT" 'required)
("OPT-PARTICIPANT" 'optional)