aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2008-07-23 22:54:16 +0800
committerMilan Crha <mcrha@src.gnome.org>2008-07-23 22:54:16 +0800
commitcd9554f6384fcc71e0210a7e88b11bd5ea8f322d (patch)
treeea8ef844c7924b576807fda635ac2ad0afcb5619
parent9eb63fa571081ff5b910163eb6b465acacebb364 (diff)
downloadgsoc2013-evolution-cd9554f6384fcc71e0210a7e88b11bd5ea8f322d.tar.gz
gsoc2013-evolution-cd9554f6384fcc71e0210a7e88b11bd5ea8f322d.tar.zst
gsoc2013-evolution-cd9554f6384fcc71e0210a7e88b11bd5ea8f322d.zip
** Part of fix for bug #543943
2008-07-23 Milan Crha <mcrha@redhat.com> ** Part of fix for bug #543943 * e-activity-handler.c: (e_activity_handler_operation_set_error): * e-task-bar.c: (e_task_bar_class_init), (impl_finalize): Leak fix. svn path=/trunk/; revision=35826
-rw-r--r--widgets/misc/ChangeLog8
-rw-r--r--widgets/misc/e-activity-handler.c1
-rw-r--r--widgets/misc/e-task-bar.c20
3 files changed, 29 insertions, 0 deletions
diff --git a/widgets/misc/ChangeLog b/widgets/misc/ChangeLog
index 3ba40553ab..6833cf44d6 100644
--- a/widgets/misc/ChangeLog
+++ b/widgets/misc/ChangeLog
@@ -1,3 +1,11 @@
+2008-07-23 Milan Crha <mcrha@redhat.com>
+
+ ** Part of fix for bug #543943
+
+ * e-activity-handler.c: (e_activity_handler_operation_set_error):
+ * e-task-bar.c: (e_task_bar_class_init), (impl_finalize):
+ Leak fix.
+
2008-07-20 Matthew Barnes <mbarnes@redhat.com>
** Fixes part of bug #542587
diff --git a/widgets/misc/e-activity-handler.c b/widgets/misc/e-activity-handler.c
index 8500f72f61..04861b1b8f 100644
--- a/widgets/misc/e-activity-handler.c
+++ b/widgets/misc/e-activity-handler.c
@@ -612,6 +612,7 @@ e_activity_handler_operation_set_error(EActivityHandler *activity_handler,
activity_info->error = error;
activity_info->error_time = time (NULL);
activity_info->error_type = E_LOG_ERROR;
+ g_free (activity_info->information);
activity_info->information = g_strdup (g_object_get_data ((GObject *) error, "primary"));
for (sp = priv->task_bars; sp != NULL; sp = sp->next) {
ETaskBar *task_bar;
diff --git a/widgets/misc/e-task-bar.c b/widgets/misc/e-task-bar.c
index c05c7d8999..9093f89d58 100644
--- a/widgets/misc/e-task-bar.c
+++ b/widgets/misc/e-task-bar.c
@@ -82,9 +82,15 @@ reduce_displayed_activities_per_component (ETaskBar *task_bar)
}
#endif
+
+static void impl_finalize (GObject *object);
+
static void
e_task_bar_class_init (ETaskBarClass *klass)
{
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+ object_class->finalize = impl_finalize;
}
static void
@@ -114,6 +120,20 @@ e_task_bar_init (ETaskBar *task_bar)
gtk_widget_set_size_request (GTK_WIDGET (task_bar), -1, height * 2);
}
+static void
+impl_finalize (GObject *object)
+{
+ ETaskBar *task_bar;
+ ETaskBarPrivate *priv;
+
+ task_bar = E_TASK_BAR (object);
+ priv = task_bar->priv;
+
+ g_free (priv);
+
+ (* G_OBJECT_CLASS (e_task_bar_parent_class)->finalize) (object);
+}
+
void
e_task_bar_construct (ETaskBar *task_bar)