aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/misc/e-activity-handler.c
diff options
context:
space:
mode:
authorSrinivasa Ragavan <sragavan@novell.com>2008-06-30 14:57:45 +0800
committerSrinivasa Ragavan <sragavan@src.gnome.org>2008-06-30 14:57:45 +0800
commitcdf763e9d7f65a2bb94ab64f88b43b41a29e3e89 (patch)
tree7059b7510a2f33a210cd5880486de1f86ca038b6 /widgets/misc/e-activity-handler.c
parent316d02285c002240b93640185c3e615a75394158 (diff)
downloadgsoc2013-evolution-cdf763e9d7f65a2bb94ab64f88b43b41a29e3e89.tar.gz
gsoc2013-evolution-cdf763e9d7f65a2bb94ab64f88b43b41a29e3e89.tar.zst
gsoc2013-evolution-cdf763e9d7f65a2bb94ab64f88b43b41a29e3e89.zip
** Fix for bug #519536
2008-06-30 Srinivasa Ragavan <sragavan@novell.com> ** Fix for bug #519536 * e-activity-handler.c: (cancel_wrapper): Handle freeing of data safely. svn path=/trunk/; revision=35702
Diffstat (limited to 'widgets/misc/e-activity-handler.c')
-rw-r--r--widgets/misc/e-activity-handler.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/widgets/misc/e-activity-handler.c b/widgets/misc/e-activity-handler.c
index 6539a11f36..8500f72f61 100644
--- a/widgets/misc/e-activity-handler.c
+++ b/widgets/misc/e-activity-handler.c
@@ -381,6 +381,7 @@ cancel_wrapper (gpointer pdata)
if (data->info->error) {
/* Hide the error */
EActivityHandler *handler = data->handler;
+ ActivityInfo *info;
int order, len;
GSList *sp;
GList *p = lookup_activity (handler->priv->activity_infos, data->id, &order);
@@ -388,13 +389,14 @@ cancel_wrapper (gpointer pdata)
g_object_get_data (data->info->error, "secondary"));
gtk_widget_destroy (data->info->error);
data->info->error = NULL;
+ info = data->info;
for (sp = handler->priv->task_bars; sp != NULL; sp = sp->next) {
ETaskBar *task_bar;
task_bar = E_TASK_BAR (sp->data);
- e_task_bar_remove_task_from_id (task_bar, data->info->id);
+ e_task_bar_remove_task_from_id (task_bar, info->id);
}
- activity_info_free (data->info);
+ activity_info_free (info);
len = g_list_length (handler->priv->activity_infos);
handler->priv->activity_infos = g_list_remove_link (handler->priv->activity_infos, p);
if (len == 1)