From 9b43b8e3de4d310325ebffe5a7e0a8459dc7b520 Mon Sep 17 00:00:00 2001 From: Peter Bieringer Date: Mon, 1 Dec 2025 18:52:05 +0100 Subject: [PATCH] catch broken event --- radicale/item/filter.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/radicale/item/filter.py b/radicale/item/filter.py index 94cdc015..a1329988 100644 --- a/radicale/item/filter.py +++ b/radicale/item/filter.py @@ -354,7 +354,10 @@ def visit_time_ranges(vobject_item: vobject.base.Component, child_name: str, for child, is_recurrence, recurrences in get_children( vobject_item.vevent_list): # TODO: check if there's a timezone - dtstart = child.dtstart.value + try: + dtstart = child.dtstart.value + except AttributeError: + raise AttributeError("missing DTSTART") if child.rruleset: dtstarts, infinity = getrruleset(child, recurrences)