diff options
author | Srinivasa Ragavan <sragavan@novell.com> | 2008-06-30 14:57:45 +0800 |
---|---|---|
committer | Srinivasa Ragavan <sragavan@src.gnome.org> | 2008-06-30 14:57:45 +0800 |
commit | cdf763e9d7f65a2bb94ab64f88b43b41a29e3e89 (patch) | |
tree | 7059b7510a2f33a210cd5880486de1f86ca038b6 | |
parent | 316d02285c002240b93640185c3e615a75394158 (diff) | |
download | gsoc2013-evolution-cdf763e9d7f65a2bb94ab64f88b43b41a29e3e89.tar gsoc2013-evolution-cdf763e9d7f65a2bb94ab64f88b43b41a29e3e89.tar.gz gsoc2013-evolution-cdf763e9d7f65a2bb94ab64f88b43b41a29e3e89.tar.bz2 gsoc2013-evolution-cdf763e9d7f65a2bb94ab64f88b43b41a29e3e89.tar.lz gsoc2013-evolution-cdf763e9d7f65a2bb94ab64f88b43b41a29e3e89.tar.xz 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
-rw-r--r-- | widgets/misc/ChangeLog | 7 | ||||
-rw-r--r-- | widgets/misc/e-activity-handler.c | 6 |
2 files changed, 11 insertions, 2 deletions
diff --git a/widgets/misc/ChangeLog b/widgets/misc/ChangeLog index 85f63b4742..64aaad5152 100644 --- a/widgets/misc/ChangeLog +++ b/widgets/misc/ChangeLog @@ -1,3 +1,10 @@ +2008-06-30 Srinivasa Ragavan <sragavan@novell.com> + + ** Fix for bug #519536 + + * e-activity-handler.c: (cancel_wrapper): Handle freeing of data + safely. + 2008-06-18 Milan Crha <mcrha@redhat.com> ** Fix for bug #532597 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) |