Bug 19275 - GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `AtkObject'
Summary: GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `A...
Status: RESOLVED FIXED
Alias: None
Product: at-spi2
Classification: Unclassified
Component: atk (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Mark Doffman
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-12-24 04:11 UTC by Alban Browaeys
Modified: 2010-01-24 08:36 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Alban Browaeys 2008-12-24 04:11:14 UTC
I get :
GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `AtkObject'
 when running rhythmbox with :
 G_DEBUG="fatal_warnings" rhythmbox --gtk-module=/usr/local/lib/gtk-2.0/modules/libspiatk.so 

register 0 0x86a3218
register 0 0x86a3218
PO : 0 0x86a3218

GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `AtkObject'
aborting...

Program received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 0xb65e3770 (LWP 11245)]
IA__g_logv (log_domain=0xb70d7b7c "GLib-GObject", log_level=G_LOG_LEVEL_WARNING, 
    format=0xb70de1f0 "invalid uninstantiatable type `%s' in cast to `%s'", args1=0xbfd3c5cc "")
    at /build/buildd/glib2.0-2.19.3/glib/gmessages.c:503
503	/build/buildd/glib2.0-2.19.3/glib/gmessages.c: No such file or directory.
	in /build/buildd/glib2.0-2.19.3/glib/gmessages.c
(gdb) bt
#0  IA__g_logv (log_domain=0xb70d7b7c "GLib-GObject", log_level=G_LOG_LEVEL_WARNING, 
    format=0xb70de1f0 "invalid uninstantiatable type `%s' in cast to `%s'", args1=0xbfd3c5cc "")
    at /build/buildd/glib2.0-2.19.3/glib/gmessages.c:503
#1  0xb7023f16 in IA__g_log (log_domain=0xb70d7b7c "GLib-GObject", log_level=G_LOG_LEVEL_WARNING, 
    format=0xb70de1f0 "invalid uninstantiatable type `%s' in cast to `%s'") at /build/buildd/glib2.0-2.19.3/glib/gmessages.c:517
#2  0xb70cdf36 in IA__g_type_check_instance_cast (type_instance=0x86a3218, iface_type=136319936)
    at /build/buildd/glib2.0-2.19.3/gobject/gtype.c:3740
#3  0xb636c0e9 in atk_dbus_get_object (path=0x86a6120 "/org/freedesktop/atspi/accessible/0") at atk-dbus.c:246
#4  0xb636519d in get_object_from_path (path=0x86a6120 "/org/freedesktop/atspi/accessible/0", user_data=0x0) at accessible.c:32
#5  0xb63705ce in append_accessible (ref=0x0, obj_data=0x84fcdc8, iter=0xbfd3c77c) at tree.c:109
#6  0xb700b38c in IA__g_hash_table_foreach (hash_table=0x81f61b0, func=0xb63703b0 <append_accessible>, user_data=0xbfd3c77c)
    at /build/buildd/glib2.0-2.19.3/glib/ghash.c:1210
#7  0xb636c1b5 in atk_dbus_foreach_update_list (func=0xb63703b0 <append_accessible>, data=0xbfd3c77c) at atk-dbus.c:181
#8  0xb6370c1c in send_cache_update (d=0x0) at tree.c:180
#9  0xb7017bb1 in g_idle_dispatch (source=0x8646340, callback=0, user_data=0x0) at /build/buildd/glib2.0-2.19.3/glib/gmain.c:3924
#10 0xb7019ae8 in IA__g_main_context_dispatch (context=0x80db978) at /build/buildd/glib2.0-2.19.3/glib/gmain.c:1814
#11 0xb701d193 in g_main_context_iterate (context=0x80db978, block=1, dispatch=1, self=0x80bc408)
    at /build/buildd/glib2.0-2.19.3/glib/gmain.c:2448
#12 0xb701d6b2 in IA__g_main_loop_run (loop=0x8224550) at /build/buildd/glib2.0-2.19.3/glib/gmain.c:2656
#13 0xb779f319 in IA__gtk_main () at /build/buildd/gtk+2.0-2.14.5/gtk/gtkmain.c:1200
#14 0x0805f87e in main (argc=Cannot access memory at address 0x49
) at main.c:330


where PO is "PO: %d %p\n", index, data in atk_dbus_get_object
and register is "register %d %p\n", reference, accessible in register_accessible 
both in atk_dbus.c



I also get:
process 10355: arguments to dbus_message_new_signal() were incorrect, assertion "_dbus_check_is_valid_member (name)" failed in file dbus-message.c line 1163.
This is normally a bug in some application using the D-Bus library.
process 10355: arguments to dbus_message_append_args_valist() were incorrect, assertion "message != NULL" failed in file dbus-message.c line 1521.
This is normally a bug in some application using the D-Bus library.
process 10355: arguments to dbus_connection_send() were incorrect, assertion "message != NULL" failed in file dbus-connection.c line 3100.
This is normally a bug in some application using the D-Bus library.
process 10355: arguments to dbus_message_unref() were incorrect, assertion "message != NULL" failed in file dbus-message.c line 1391.
This is normally a bug in some application using the D-Bus library.

in the registry side though it seems both issues are not correlated .

Could you test with rhythmbox or help me find out what s wrong with the atk_dbus_get_object (I am lost as ref2ptr have this acessible inserted in the register or should have).
Comment 1 Mark Doffman 2009-01-30 06:35:03 UTC
I have tested out rhythmbox using the D-Bus ATK bridge.

Rhythmbox seemed to pose a very difficult challenge for the library. There are a number of patches that went in while testing including a large rewrite of the code for registering accessibles. Commits 1889d0741dab87cb6a46246a1ebd8267f72ad148 through to b59dc5b9c3c2412fca31a86241d2540c30935833 were all made while testing against rhythmbox.

At the head of the main branch (dfc071dcf2f98f282616911cb0eb1636c93f3e77) Rhythmbox should now be accessible without any warnings. 

Rhythmbox uses a number of containers that have the state "manages-descendants". This is not currently supported by D-Bus AT-SPI and has been opened as: http://bugs.freedesktop.org/show_bug.cgi?id=19829

Could you please try HEAD and see if you have any problems?

The report of issues with the registryd and event sending have been separated into bug:
https://bugs.freedesktop.org/show_bug.cgi?id=19830
Comment 2 Mark Doffman 2010-01-24 08:36:10 UTC
This is a very old bug, with large sections of related code being improved since reported. I believe it was fixed by commits mentioned in previous comment.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.