After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 162676 - Crashes at Startup
Crashes at Startup
Status: VERIFIED FIXED
Product: gtk+
Classification: Platform
Component: .General
unspecified
Other Linux
: High major
: ---
Assigned To: gtk-bugs
gtk-bugs
AP0
: 163238 168841 169650 300887 301966 302833 303442 303748 304240 306193 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2005-01-01 18:53 UTC by Dennis Cranston
Modified: 2005-06-05 20:42 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch for at-spi (1.38 KB, patch)
2005-01-18 13:29 UTC, Dragan Sarbut
none Details | Review
patch for atk (882 bytes, patch)
2005-01-18 13:30 UTC, Dragan Sarbut
none Details | Review
patch for gail (885 bytes, patch)
2005-01-18 13:31 UTC, Dragan Sarbut
none Details | Review
proposed patch (725 bytes, patch)
2005-01-20 09:40 UTC, remus draica
none Details | Review

Description Dennis Cranston 2005-01-01 18:53:30 UTC
I wanted to run gnopernicus, so that I could test gnome-search-tool and fix any
problems that might exist in the latest version.  Unfortunately, gnopernicus
always crashes at startup.
Comment 1 Dennis Cranston 2005-01-01 18:55:03 UTC
(gdb) run
Starting program: /gnome/install/bin/gnopernicus
[Thread debugging using libthread_db enabled]
[New Thread -151127840 (LWP 12707)]

** ERROR **: file accessible.c: line 495 (spi_accessible_construct): assertion
failed: (o)
aborting...

Program received signal SIGABRT, Aborted.

Thread NaN (LWP 12707)

  • #0 _dl_sysinfo_int80
    from /lib/ld-linux.so.2
  • #1 raise
    from /lib/tls/libc.so.6
  • #2 abort
    from /lib/tls/libc.so.6
  • #3 IA__g_logv
  • #4 IA__g_log
  • #5 IA__g_assert_warning
    at gmessages.c line 542
  • #6 spi_accessible_construct
    at accessible.c line 496
  • #7 spi_application_new
    at application.c line 292
  • #8 atk_bridge_init
    at bridge.c line 178
  • #9 default_display_notify_cb
    at gtkmodules.c line 411
  • #10 IA__g_cclosure_marshal_VOID__PARAM
    at gmarshal.c line 531
  • #11 IA__g_closure_invoke
    at gclosure.c line 437
  • #12 signal_emit_unlocked_R
    at gsignal.c line 2485
  • #13 IA__g_signal_emit_valist
    at gsignal.c line 2244
  • #14 IA__g_signal_emit
    at gsignal.c line 2288
  • #15 g_object_dispatch_properties_changed
    at gobject.c line 593
  • #16 g_object_notify_dispatcher
    at gobject.c line 234
  • #17 IA__g_object_notify
    at gobjectnotifyqueue.c line 123
  • #18 IA__gdk_display_manager_set_default_display
    at gdkdisplaymanager.c line 260
  • #19 IA__gdk_display_open_default_libgtk_only
    at gdk.c line 283
  • #20 IA__gtk_init_check
    at gtkmain.c line 702
  • #21 IA__gtk_init
    at gtkmain.c line 737
  • #22 bonobo_ui_gtk_post_args_parse
    at bonobo-ui-init-gtk.c line 42
  • #23 gnome_program_postinit
    at gnome-program.c line 1633
  • #24 gnome_program_init_common
    at gnome-program.c line 1865
  • #25 gnome_program_init
    at gnome-program.c line 1683
  • #26 main
    at gnopi.c line 298

Comment 2 Alexandra Telescu 2005-01-04 08:53:03 UTC
I am using Gnopernicus from CVS HEAD (January 4th 2005) and I don't see this
problem.
What Gnopernicus are you using?
Comment 3 Dennis Cranston 2005-01-04 16:44:31 UTC
CVS HEAD.  Last ChangeLog entry is ...

2004-12-17 Dana Ormenisan (patch from Ada Telescu <at@baum.ro>)

        * gnopi/gnopi.c:
        (gn_check_accessibility_key):
        Changed to provide an ATK_ROLE_ALERT role for the dialogs asking to
        set the accessiblility key and to reboot the computer.

        Fixes for bug #159423.
Comment 4 Alexandra Telescu 2005-01-04 16:48:55 UTC
I am using the same version of Gnopernicus but I don't see this behavior.
Can you give more details about the system that you are using?
Comment 5 Dennis Cranston 2005-01-04 16:55:17 UTC
System: Fedora Core 3
GNOME:  Built using jhbuild
What other information do you need?
Comment 6 Dragan Sarbut 2005-01-05 08:45:20 UTC
Hi, 
I tested gnopernicus on fedora core 3.
The default version of gnopernicus that came with the system works fine for me.
I tried installing the one from cvs HEAD.
Steps for installation:
- downloaded gnopernicus from CVS HEAD.
- downloaded and installed gnome-common rpm package because my system did not
have gnome-autogen.sh.
- downloaded and installed gnome-speech-devel rpm package in order to be able to
compile gnopernicus.
*note: gnome-mag-devel is needed for compiling gnopernicus with magnification
*support.

- after these steps I was able to compile gnopernicus with the folowing command
lines:
./autogen.sh --prefix=/usr --enable-magnifier=no
make
su -c "make install"
*note: _before_ "make install" you have to create a directory "gconf" in
*"/usr/etc" or you can pass a option to autogen with the path to your gconf
*directory; I don't know that option.

- after "make install", I tested gnopernicus and it worked Ok

Looking at the stack trace from comment #1, I think that the problem could be
somewhere in your gnome build.

Can you try to re-install these modules manually:
- atk
- gail
- at-spi
- gnome-speech
- gnome-mag
- gnopernicus.?

Comment 7 Dennis Cranston 2005-01-05 16:39:11 UTC
Your test environment is invalid, because you are using Fedora rpms which are
part of gnome 2.8.  For example, Fedora's atk rpms are at version 1.8, but in
gnome 2.9.x the atk version is currently at 1.9.0.  So, you have not setup a
true gnome 2.9.x test environment.  Please use jhbuild or some similar tool to
setup a gnome development environment.
Comment 8 remus draica 2005-01-13 12:49:47 UTC
Does at-poke work on your computer?
Comment 9 Dennis Cranston 2005-01-13 16:36:37 UTC
What is at-poke?

$ find . -name 'at-poke' -print
$ echo $?
1

  


Comment 10 Dennis Cranston 2005-01-14 02:41:58 UTC
Alright, I found at-poke in gnome cvs.  At-poke does not work either.  It does
not crash, but it prints the following to stderr.

** ERROR **: file accessible.c: line 495 (spi_accessible_construct): assertion
failed: (o)
aborting...
Comment 11 Dragan Sarbut 2005-01-14 07:30:31 UTC
Yes, at-poke behaves exactly like gnopernicus.
This is not a gnopernicus bug. 
It seems like a build problem, perhaps something goes wrong when gnome is loaded.
Comment 12 bill.haneman 2005-01-14 11:38:19 UTC
dennis: could you try this with at-spi HEAD installed?
Comment 13 Dennis Cranston 2005-01-14 16:26:22 UTC
I have at-spi from HEAD installed.  Like I have said above, I have a complete
GNOME 2.9.x environment installed using jhbuild.
Comment 14 Dragan Sarbut 2005-01-18 13:28:17 UTC
I managed to reprduce the same behaviour .
After that I started going into at-spi to see what the problem is, but it seems
to be somewere in the UI (atk or gail) part.
I say this because 'srcore' runs on my system and I get the crash _only_ when I
start 'gnopernicus'.
So in "at-spi/atk-bridge/bridge.c" line 178, the 'atk_get_root' functions
returns a NULL AtkObject*.
Following in "atk/atk/atkutil.c" line 307, I see that 'klass->get_root' is NULL,
so this is where the problem is.

This is also where I got confused...
I looked in gail and the only place I found that deals with 'get_root' was in
"gail/gail/gailutil.c" in functions 'gail_util_class_init' and
'gail_util_get_root'. But these functions are not called at all !?

I will attach the 3 diff files from my investigations and I'm transfering this
bug to atk for evaluation.




Comment 15 Dragan Sarbut 2005-01-18 13:29:27 UTC
Created attachment 36175 [details] [review]
patch for at-spi
Comment 16 Dragan Sarbut 2005-01-18 13:30:28 UTC
Created attachment 36176 [details] [review]
patch for atk
Comment 17 Dragan Sarbut 2005-01-18 13:31:04 UTC
Created attachment 36177 [details] [review]
patch for gail
Comment 18 Dragan Sarbut 2005-01-18 13:33:06 UTC
Transfering to atk for further investigations.
See comment #14
Comment 19 bill.haneman 2005-01-19 15:02:07 UTC
Dennis: reports are that this bug is only active when gtk+/glib 2.6 is used; if
you use the 2.4 series the bug is not present.  We'll try to investigate.
Comment 20 Dragan Sarbut 2005-01-19 15:12:28 UTC
Bill,
I discovered that if i run for example "gedit --gkt-module=gail:atk-bridge" the
error occures _BUT_ if I try "gedit --gtk-module=atk-bridge:gail" it works OK.

We checked in gtk+ and found out that when the modules are loaded,
g_slist_prepend is used, that's why this happens. 
Comment 21 padraig.obriain 2005-01-19 15:26:21 UTC
Are you saying that "gedit --gtk-modules=gail:atk-bridge" works when using GTK
2.4 but does not work when using GTK 2.6?
Comment 22 Dennis Cranston 2005-01-19 19:47:14 UTC
Bill:  Yes, I am running with gtk+/glib 2.6.   Thanks.
Comment 23 Dragan Sarbut 2005-01-20 07:37:44 UTC
Padraig: On Fedora Core3 using a gnome stack built with jhbuild (with some
errors but none related to gtk) which contains GTK 2.6.2. i see the folowing:

- gedit "--gtk-module=gail:atk-bridge"  (does not work)
- gedit "--gtk-module=atk-bridge:gail"  (works OK)

This can also be reproduced on JDS after installing GTK 2.6.2.

Dennis: Could you please try the above lines to confirm what I am saying?
Remember to turn off your accessibility support before you try the commands.
Thanks.
Comment 24 Dragan Sarbut 2005-01-20 07:42:15 UTC
Dennis please ignore the '"' characters in the lines above
Comment 25 remus draica 2005-01-20 09:26:35 UTC
The problem was introduced by changes made in 2004-09-01 when module handling
code was moved in a separate file.

In the original code every module is inserted at the begining of a list. After
inserting all modules, the list is reversed. The result is stored in gtk_modules
global variable.

In the new code every module is inserted at the begining of gtk_modules. This
way modules are stored in the reverse order. After inserting all modules, the
list is reversed, but the result is not stored.
Comment 26 remus draica 2005-01-20 09:40:07 UTC
Created attachment 36282 [details] [review]
proposed patch


Patch contains minimum changes to solve the bug.
Comment 27 Matthias Clasen 2005-01-20 13:34:00 UTC
Thanks for tracking this down.

2005-01-20  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkmodules.c (load_module): Don't reverse the order
	of modules when putting them in gtk_modules.  (#162676, Dennis
	Cranston, patch by Remus Draica)
Comment 28 Dennis Cranston 2005-01-20 16:55:34 UTC
Verified ... After applying the patch, the crash is fixed.
Comment 29 Elijah Newren 2005-02-07 07:01:40 UTC
*** Bug 163238 has been marked as a duplicate of this bug. ***
Comment 30 bill.haneman 2005-03-02 12:02:28 UTC
*** Bug 168841 has been marked as a duplicate of this bug. ***
Comment 31 Alexandra Telescu 2005-03-09 15:16:52 UTC
*** Bug 169650 has been marked as a duplicate of this bug. ***
Comment 32 Oana Serb 2005-04-20 08:15:50 UTC
*** Bug 300887 has been marked as a duplicate of this bug. ***
Comment 33 Elijah Newren 2005-04-26 03:10:07 UTC
*** Bug 301966 has been marked as a duplicate of this bug. ***
Comment 34 Oana Serb 2005-05-03 11:57:18 UTC
*** Bug 302833 has been marked as a duplicate of this bug. ***
Comment 35 Olav Vitters 2005-05-08 09:32:45 UTC
*** Bug 303442 has been marked as a duplicate of this bug. ***
Comment 36 Oana Serb 2005-05-11 06:59:01 UTC
*** Bug 303748 has been marked as a duplicate of this bug. ***
Comment 37 Elijah Newren 2005-05-16 03:00:42 UTC
*** Bug 304240 has been marked as a duplicate of this bug. ***
Comment 38 Elijah Newren 2005-06-05 20:42:49 UTC
*** Bug 306193 has been marked as a duplicate of this bug. ***