[gucharmap] a11y: Fix introspection dump



commit 3d5e40039bcd99aa60c9deb2f54d332e8dc2195a
Author: Christian Persch <chpe src gnome org>
Date:   Mon Sep 19 22:11:03 2016 +0200

    a11y: Fix introspection dump
    
    During introspection dump, the a11y object class is a dummy, not
    derived from GtkAccessibleClass, so this class cast lead to a
    critical.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=760896

 gucharmap/gucharmap-chartable-accessible.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)
---
diff --git a/gucharmap/gucharmap-chartable-accessible.c b/gucharmap/gucharmap-chartable-accessible.c
index 641a07b..cca7b88 100644
--- a/gucharmap/gucharmap-chartable-accessible.c
+++ b/gucharmap/gucharmap-chartable-accessible.c
@@ -538,13 +538,16 @@ gucharmap_chartable_accessible_class_init (GucharmapChartableAccessibleClass *kl
 {
   GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
   AtkObjectClass *atk_object_class = ATK_OBJECT_CLASS (klass);
-  GtkAccessibleClass *accessible_class = GTK_ACCESSIBLE_CLASS (klass);
 
   gucharmap_chartable_accessible_parent_class = g_type_class_peek_parent (klass);
 
   gobject_class->finalize = gucharmap_chartable_accessible_finalize;
 
-  accessible_class->connect_widget_destroyed = gucharmap_chartable_accessible_connect_widget_destroyed;
+  /* This is normally true, except during introspection dump */
+  if (GTK_IS_ACCESSIBLE_CLASS (klass)) {
+    GtkAccessibleClass *accessible_class = GTK_ACCESSIBLE_CLASS (klass);
+    accessible_class->connect_widget_destroyed = gucharmap_chartable_accessible_connect_widget_destroyed;
+  }
 
   atk_object_class->get_n_children = gucharmap_chartable_accessible_get_n_children;
   atk_object_class->ref_child = gucharmap_chartable_accessible_ref_child;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]