gcal-recurrence: Handle invalid 'until' time

When the until's time part is invalid, the libical claims the time
as valid, but the conversion into the GDateTime fails and returns NULL.
Such events, which claim to have until-date recurrence, but NULL 'until'
cannot be edited, because they cause a crash of the application.

More information can be found downstream at:
https://bugzilla.redhat.com/show_bug.cgi?id=2135772

Related to https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/892
This commit is contained in:
Milan Crha
2022-11-17 10:46:16 +00:00
committed by Georges Basile Stavracas Neto
parent 7f67115485
commit 1ba749ee59
+2
View File
@@ -229,6 +229,8 @@ gcal_recurrence_parse_recurrence_rules (ECalComponent *comp)
{
recur->limit_type = GCAL_RECURRENCE_UNTIL;
recur->limit.until = gcal_date_time_from_icaltime (until);
if (!recur->limit.until)
recur->limit_type = GCAL_RECURRENCE_FOREVER;
}
else
{