[evolution/wip/gsettings] Work around another a11y crash.
- From: Rodrigo Moya <rodrigo src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution/wip/gsettings] Work around another a11y crash.
- Date: Wed, 29 Jun 2011 17:25:56 +0000 (UTC)
commit bdc73471827871c2f9a6f213c1cfa4e9839548a9
Author: Matthew Barnes <mbarnes redhat com>
Date: Wed Apr 13 12:20:48 2011 -0400
Work around another a11y crash.
Some kind of object lifetime issue in GalA11yETableItem. Just work
around it for now. Killing this class would pretty much mean killing
a11y support for ETables entirely and I'm not that pissed off... yet.
widgets/table/gal-a11y-e-table-item.c | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
---
diff --git a/widgets/table/gal-a11y-e-table-item.c b/widgets/table/gal-a11y-e-table-item.c
index eb0c9be..f35eeb1 100644
--- a/widgets/table/gal-a11y-e-table-item.c
+++ b/widgets/table/gal-a11y-e-table-item.c
@@ -71,8 +71,16 @@ static AtkObject* eti_ref_at (AtkTable *table, gint row, gint column);
static void
item_finalized (gpointer user_data, GObject *gone_item)
{
- GalA11yETableItem *a11y = GAL_A11Y_E_TABLE_ITEM (user_data);
- GalA11yETableItemPrivate *priv = GET_PRIVATE (a11y);
+ GalA11yETableItem *a11y;
+ GalA11yETableItemPrivate *priv;
+
+ /* XXX GalA11yETableItem may already be finalized.
+ * Just work around it for now. */
+ if (!GAL_A11Y_IS_E_TABLE_ITEM (user_data))
+ return;
+
+ a11y = GAL_A11Y_E_TABLE_ITEM (user_data);
+ priv = GET_PRIVATE (a11y);
atk_state_set_add_state (priv->state_set, ATK_STATE_DEFUNCT);
atk_object_notify_state_change (ATK_OBJECT (a11y), ATK_STATE_DEFUNCT, TRUE);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]