[evolution] I#1758 - Calendar: Adapt to libical 3.0.12 change
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution] I#1758 - Calendar: Adapt to libical 3.0.12 change
- Date: Wed, 5 Jan 2022 12:36:20 +0000 (UTC)
commit d3458bc256af3cacfeaa072f77fe9991ee8d852e
Author: Milan Crha <mcrha redhat com>
Date: Wed Jan 5 13:30:23 2022 +0100
I#1758 - Calendar: Adapt to libical 3.0.12 change
The behavior of the i_cal_component_get_dtend() changed after [1],
which uncovered requirement for some changes on the Evolution side
to use properties only for components of an allowed type.
[1] https://github.com/libical/libical/pull/519
Closes https://gitlab.gnome.org/GNOME/evolution/-/issues/1758
src/calendar/gui/e-cal-component-preview.c | 4 ++--
src/calendar/gui/e-cal-dialogs.c | 2 +-
src/calendar/gui/e-comp-editor.c | 5 ++++-
3 files changed, 7 insertions(+), 4 deletions(-)
---
diff --git a/src/calendar/gui/e-cal-component-preview.c b/src/calendar/gui/e-cal-component-preview.c
index e2f841b876..0445913a97 100644
--- a/src/calendar/gui/e-cal-component-preview.c
+++ b/src/calendar/gui/e-cal-component-preview.c
@@ -299,7 +299,7 @@ cal_component_preview_write_html (ECalComponentPreview *preview,
e_cal_component_datetime_free (dt);
/* write end date */
- dt = e_cal_component_get_dtend (comp);
+ dt = e_cal_component_get_vtype (comp) == E_CAL_COMPONENT_EVENT ? e_cal_component_get_dtend (comp) :
NULL;
if (dt && e_cal_component_datetime_get_value (dt)) {
str = timet_to_str_with_zone (dt, client, default_zone);
cal_component_preview_add_table_line (buffer, _("End Date:"), str);
@@ -308,7 +308,7 @@ cal_component_preview_write_html (ECalComponentPreview *preview,
e_cal_component_datetime_free (dt);
/* write Due Date */
- dt = e_cal_component_get_due (comp);
+ dt = e_cal_component_get_vtype (comp) == E_CAL_COMPONENT_TODO ? e_cal_component_get_due (comp) : NULL;
if (dt && e_cal_component_datetime_get_value (dt)) {
str = timet_to_str_with_zone (dt, client, default_zone);
cal_component_preview_add_table_line (buffer, _("Due Date:"), str);
diff --git a/src/calendar/gui/e-cal-dialogs.c b/src/calendar/gui/e-cal-dialogs.c
index f2a667f435..7df5b929bb 100644
--- a/src/calendar/gui/e-cal-dialogs.c
+++ b/src/calendar/gui/e-cal-dialogs.c
@@ -47,7 +47,7 @@ is_past_event (ECalComponent *comp)
if (!comp)
return TRUE;
- end_date = e_cal_component_get_dtend (comp);
+ end_date = e_cal_component_get_vtype (comp) == E_CAL_COMPONENT_EVENT ? e_cal_component_get_dtend
(comp) : NULL;
if (!end_date)
return FALSE;
diff --git a/src/calendar/gui/e-comp-editor.c b/src/calendar/gui/e-comp-editor.c
index 16b3e15204..c6506e0707 100644
--- a/src/calendar/gui/e-comp-editor.c
+++ b/src/calendar/gui/e-comp-editor.c
@@ -3375,7 +3375,10 @@ ece_check_start_before_end (ECompEditor *comp_editor,
ICalTime *orig_start, *orig_end;
orig_start = i_cal_component_get_dtstart (icomp);
- orig_end = i_cal_component_get_dtend (icomp);
+ if (e_cal_util_component_has_property (icomp, I_CAL_DTEND_PROPERTY))
+ orig_end = i_cal_component_get_dtend (icomp);
+ else
+ orig_end = i_cal_component_get_due (icomp);
if (orig_start && i_cal_time_is_valid_time (orig_start) &&
orig_end && i_cal_time_is_valid_time (orig_end)) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]