aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2014-04-28 21:51:37 +0800
committerMilan Crha <mcrha@redhat.com>2014-04-28 21:51:37 +0800
commit43a4b38f4a543d1459caf3ddf1eacffad05dd5e6 (patch)
tree06feb8aad14aac04a1cd5986277797e2d62ca5e1 /calendar/gui
parent9922d3a01df4f73b48612eac060f0bfd27835e5d (diff)
downloadgsoc2013-evolution-43a4b38f4a543d1459caf3ddf1eacffad05dd5e6.tar
gsoc2013-evolution-43a4b38f4a543d1459caf3ddf1eacffad05dd5e6.tar.gz
gsoc2013-evolution-43a4b38f4a543d1459caf3ddf1eacffad05dd5e6.tar.bz2
gsoc2013-evolution-43a4b38f4a543d1459caf3ddf1eacffad05dd5e6.tar.lz
gsoc2013-evolution-43a4b38f4a543d1459caf3ddf1eacffad05dd5e6.tar.xz
gsoc2013-evolution-43a4b38f4a543d1459caf3ddf1eacffad05dd5e6.tar.zst
gsoc2013-evolution-43a4b38f4a543d1459caf3ddf1eacffad05dd5e6.zip
Fix regressions after commit fdde3339619
The commit fixed few memory leaks, but also caused several crashes due to those changes, thus this fixes the introduces issues.
Diffstat (limited to 'calendar/gui')
-rw-r--r--calendar/gui/e-alarm-list.c6
-rw-r--r--calendar/gui/e-cal-model-calendar.c2
-rw-r--r--calendar/gui/e-cal-model-tasks.c4
-rw-r--r--calendar/gui/e-cal-model.c20
4 files changed, 11 insertions, 21 deletions
diff --git a/calendar/gui/e-alarm-list.c b/calendar/gui/e-alarm-list.c
index 77f8c72b1b..19b47e01f9 100644
--- a/calendar/gui/e-alarm-list.c
+++ b/calendar/gui/e-alarm-list.c
@@ -78,11 +78,11 @@ G_DEFINE_TYPE_WITH_CODE (
e_alarm_list_tree_model_init))
static void
-alarm_list_finalize (GObject *object)
+alarm_list_dispose (GObject *object)
{
e_alarm_list_clear (E_ALARM_LIST (object));
- G_OBJECT_CLASS (e_alarm_list_parent_class)->finalize (object);
+ G_OBJECT_CLASS (e_alarm_list_parent_class)->dispose (object);
}
static void
@@ -93,7 +93,7 @@ e_alarm_list_class_init (EAlarmListClass *class)
column_types[E_ALARM_LIST_COLUMN_DESCRIPTION] = G_TYPE_STRING;
object_class = G_OBJECT_CLASS (class);
- object_class->finalize = alarm_list_finalize;
+ object_class->dispose = alarm_list_dispose;
}
static void
diff --git a/calendar/gui/e-cal-model-calendar.c b/calendar/gui/e-cal-model-calendar.c
index 86bc470261..b3099cdf59 100644
--- a/calendar/gui/e-cal-model-calendar.c
+++ b/calendar/gui/e-cal-model-calendar.c
@@ -434,8 +434,6 @@ cal_model_calendar_free_value (ETableModel *etm,
case E_CAL_MODEL_CALENDAR_FIELD_DTEND :
case E_CAL_MODEL_CALENDAR_FIELD_LOCATION :
case E_CAL_MODEL_CALENDAR_FIELD_TRANSPARENCY :
- if (value)
- g_free (value);
break;
}
}
diff --git a/calendar/gui/e-cal-model-tasks.c b/calendar/gui/e-cal-model-tasks.c
index e4737ad1a2..f07d9bffb6 100644
--- a/calendar/gui/e-cal-model-tasks.c
+++ b/calendar/gui/e-cal-model-tasks.c
@@ -1066,8 +1066,6 @@ cal_model_tasks_free_value (ETableModel *etm,
case E_CAL_MODEL_TASKS_FIELD_PRIORITY :
case E_CAL_MODEL_TASKS_FIELD_STATUS :
case E_CAL_MODEL_TASKS_FIELD_URL :
- if (value)
- g_free (value);
break;
case E_CAL_MODEL_TASKS_FIELD_PERCENT :
case E_CAL_MODEL_TASKS_FIELD_COMPLETE :
@@ -1093,7 +1091,7 @@ cal_model_tasks_initialize_value (ETableModel *etm,
case E_CAL_MODEL_TASKS_FIELD_PRIORITY :
case E_CAL_MODEL_TASKS_FIELD_STATUS :
case E_CAL_MODEL_TASKS_FIELD_URL :
- return g_strdup ("");
+ return (gpointer) "";
case E_CAL_MODEL_TASKS_FIELD_COMPLETED :
case E_CAL_MODEL_TASKS_FIELD_DUE :
case E_CAL_MODEL_TASKS_FIELD_COMPLETE :
diff --git a/calendar/gui/e-cal-model.c b/calendar/gui/e-cal-model.c
index e70271937c..a27bef9990 100644
--- a/calendar/gui/e-cal-model.c
+++ b/calendar/gui/e-cal-model.c
@@ -438,7 +438,7 @@ get_categories (ECalModelComponent *comp_data)
}
}
- return comp_data->priv->categories_str->str;
+ return g_strdup (comp_data->priv->categories_str->str);
}
static gchar *
@@ -480,24 +480,18 @@ static gpointer
get_description (ECalModelComponent *comp_data)
{
icalproperty *prop;
- static GString *str = NULL;
-
- if (str) {
- g_string_free (str, TRUE);
- str = NULL;
- }
prop = icalcomponent_get_first_property (comp_data->icalcomp, ICAL_DESCRIPTION_PROPERTY);
if (prop) {
- str = g_string_new (NULL);
+ GString *str = g_string_new (NULL);
do {
str = g_string_append (str, icalproperty_get_description (prop));
} while ((prop = icalcomponent_get_next_property (comp_data->icalcomp, ICAL_DESCRIPTION_PROPERTY)));
- return str->str;
+ return g_string_free (str, FALSE);
}
- return (gpointer) "";
+ return g_strdup ("");
}
static ECellDateEditValue *
@@ -597,9 +591,9 @@ get_summary (ECalModelComponent *comp_data)
prop = icalcomponent_get_first_property (comp_data->icalcomp, ICAL_SUMMARY_PROPERTY);
if (prop)
- return (gpointer) icalproperty_get_summary (prop);
+ return g_strdup (icalproperty_get_summary (prop));
- return (gpointer) "";
+ return g_strdup ("");
}
static gchar *
@@ -1554,8 +1548,8 @@ cal_model_free_value (ETableModel *etm,
case E_CAL_MODEL_FIELD_HAS_ALARMS :
case E_CAL_MODEL_FIELD_ICON :
case E_CAL_MODEL_FIELD_COLOR :
+ case E_CAL_MODEL_FIELD_DTSTART:
break;
- case E_CAL_MODEL_FIELD_DTSTART :
case E_CAL_MODEL_FIELD_CREATED :
case E_CAL_MODEL_FIELD_LASTMODIFIED :
if (value)