[evolution] Check whether enum-based ICalParameter had been created before using it
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution] Check whether enum-based ICalParameter had been created before using it
- Date: Fri, 28 Jun 2019 10:29:08 +0000 (UTC)
commit 14aef61c84fa80a5fea2b1d3b7e97975b59eb85e
Author: Milan Crha <mcrha redhat com>
Date: Fri Jun 28 12:28:26 2019 +0200
Check whether enum-based ICalParameter had been created before using it
An enum-based ICalProperty is not created for cases when an invalid
enum value is NULL. Passing NULL to i_cal_propert_take_parameter()
produces runtime warning.
src/calendar/gui/e-comp-editor-page-general.c | 9 ++++++---
src/modules/itip-formatter/itip-view.c | 9 ++++++---
2 files changed, 12 insertions(+), 6 deletions(-)
---
diff --git a/src/calendar/gui/e-comp-editor-page-general.c b/src/calendar/gui/e-comp-editor-page-general.c
index 250ef24307..1c2a1a44ac 100644
--- a/src/calendar/gui/e-comp-editor-page-general.c
+++ b/src/calendar/gui/e-comp-editor-page-general.c
@@ -1164,13 +1164,16 @@ ecep_general_fill_component (ECompEditorPage *page,
}
param = i_cal_parameter_new_cutype (e_meeting_attendee_get_cutype (attendee));
- i_cal_property_take_parameter (prop, param);
+ if (param)
+ i_cal_property_take_parameter (prop, param);
param = i_cal_parameter_new_role (e_meeting_attendee_get_role (attendee));
- i_cal_property_take_parameter (prop, param);
+ if (param)
+ i_cal_property_take_parameter (prop, param);
param = i_cal_parameter_new_partstat (e_meeting_attendee_get_partstat
(attendee));
- i_cal_property_take_parameter (prop, param);
+ if (param)
+ i_cal_property_take_parameter (prop, param);
param = i_cal_parameter_new_rsvp (e_meeting_attendee_get_rsvp (attendee) ?
I_CAL_RSVP_TRUE : I_CAL_RSVP_FALSE);
i_cal_property_take_parameter (prop, param);
diff --git a/src/modules/itip-formatter/itip-view.c b/src/modules/itip-formatter/itip-view.c
index badd3a8759..2090ae41e7 100644
--- a/src/modules/itip-formatter/itip-view.c
+++ b/src/modules/itip-formatter/itip-view.c
@@ -4596,7 +4596,8 @@ change_status (ESourceRegistry *registry,
i_cal_property_remove_parameter_by_kind (prop, I_CAL_PARTSTAT_PARAMETER);
param = i_cal_parameter_new_partstat (partstat);
- i_cal_property_take_parameter (prop, param);
+ if (param)
+ i_cal_property_take_parameter (prop, param);
g_object_unref (prop);
} else {
@@ -4613,7 +4614,8 @@ change_status (ESourceRegistry *registry,
i_cal_property_take_parameter (prop, param);
param = i_cal_parameter_new_partstat (partstat);
- i_cal_property_take_parameter (prop, param);
+ if (param)
+ i_cal_property_take_parameter (prop, param);
i_cal_component_take_property (icomp, prop);
} else {
@@ -4637,7 +4639,8 @@ change_status (ESourceRegistry *registry,
i_cal_property_take_parameter (prop, param);
param = i_cal_parameter_new_partstat (partstat);
- i_cal_property_take_parameter (prop, param);
+ if (param)
+ i_cal_property_take_parameter (prop, param);
i_cal_component_take_property (icomp, prop);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]