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 304791 - gnome-panel crashes inside ORBit2 library on unexpected X server exit
gnome-panel crashes inside ORBit2 library on unexpected X server exit
Status: RESOLVED DUPLICATE of bug 149371
Product: ORBit2
Classification: Deprecated
Component: POA
unspecified
Other other
: High critical
: ---
Assigned To: ORBit maintainers
ORBit maintainers
Depends on:
Blocks:
 
 
Reported: 2005-05-19 18:27 UTC by Greg Hudson
Modified: 2005-07-18 21:10 UTC
See Also:
GNOME target: ---
GNOME version: 2.7/2.8



Description Greg Hudson 2005-05-19 18:27:44 UTC
Distribution: Red Hat Enterprise Linux WS release 4 (Nahant)
Package: ORBit2
Severity: normal
Version: GNOME2.8.3 unspecified
Gnome-Distributor: GNOME.Org
Synopsis: gnome-panel crashes inside ORBit2 library on unexpected X server exit
Bugzilla-Product: ORBit2
Bugzilla-Component: POA
Bugzilla-Version: unspecified
BugBuddy-GnomeVersion: 2.0 (2.8.1)
Description:
Description of the crash:

gnome-panel gets a memory error on exit when the X connection is
unexpectedly terminated.  The immediate cause of the crash seems to be
an unexpected NULL value in the orb->adaptors array.  How that NULL came
to be there, I don't understand; it could be that the bug is in a higher
layer.

Steps to reproduce the crash:
1. Xnest :1 &
2. gnome-panel --display=:1 &
3. kill %1 (or whatever the job number of the Xnest is)

This reproduces the problem about 50% of the time for me.

Additional Information:

Some data not present in the bug-buddy crash dump which may be of
interest:

(gdb) up 4

Thread 1 (Thread -1208092992 (LWP 29259))

  • #0 _dl_sysinfo_int80
    from /lib/ld-linux.so.2
  • #1 __waitpid_nocancel
    from /lib/tls/libpthread.so.0
  • #2 libgnomeui_segv_handle
    at gnome-ui-init.c line 741
  • #3 <signal handler called>
  • #4 ORBit_adaptor_find
    at orbit-adaptor.c line 164
  • #5 ORBit_handle_request
    at orbit-adaptor.c line 221
  • #6 giop_connection_handle_input
    at giop-recv-buffer.c line 1282
  • #7 link_connection_io_handler
    at linc-connection.c line 1353
  • #8 link_source_dispatch
    at linc-source.c line 149
  • #9 g_main_dispatch
    at gmain.c line 1942
  • #10 g_main_context_dispatch
    at gmain.c line 2492
  • #11 g_main_context_iterate
    at gmain.c line 2573
  • #12 g_main_context_iteration
    at gmain.c line 2632
  • #13 link_main_iteration
    at linc.c line 254
  • #14 giop_recv_buffer_get
    at giop-recv-buffer.c line 718
  • #15 ORBit_small_invoke_stub
    at orbit-small.c line 657
  • #16 ORBit_small_invoke_stub_n
    at orbit-small.c line 575
  • #17 ORBit_c_stub_invoke
    at poa.c line 2640
  • #18 Bonobo_Unknown_unref
    at Bonobo_Unknown-stubs.c line 15
  • #19 bonobo_object_release_unref
    at bonobo-object.c line 574
  • #20 bonobo_control_frame_bind_to_control
    at bonobo-control-frame.c line 792
  • #21 control_connection_died_cb
    at bonobo-control-frame.c line 73
  • #22 link_connection_emit_broken
    at linc-connection.c line 140
  • #23 dispatch_callbacks_drop_lock
    at linc-connection.c line 229
  • #24 link_connection_state_changed_T_R
    at linc-connection.c line 307
  • #25 link_connection_state_changed
    at linc-connection.c line 754
  • #26 link_connection_exec_disconnect
    at linc-connection.c line 1425
  • #27 link_dispatch_command
    at linc.c line 468
  • #28 link_exec_command
    at linc.c line 122
  • #29 link_connection_disconnect
    at linc-connection.c line 1440
  • #30 giop_connection_close
    at giop-connection.c line 55
  • #31 giop_connection_dispose
    at giop-connection.c line 65
  • #32 g_object_run_dispose
    at gobject.c line 602
  • #33 link_connections_close
    at linc-connection.c line 1533
  • #34 giop_shutdown
    at giop.c line 647
  • #35 CORBA_ORB_shutdown
    at corba-orb.c line 1158
  • #36 CORBA_ORB_destroy
    at corba-orb.c line 1177
  • #37 shutdown_orb
    at corba-orb.c line 266
  • #38 exit
    from /lib/tls/libc.so.6
  • #39 gdk_x_io_error
    at gdkmain-x11.c line 588
  • #40 _XIOError
    from /usr/X11R6/lib/libX11.so.6
  • #41 _XRead
    from /usr/X11R6/lib/libX11.so.6
  • #42 _XEventsQueued
    from /usr/X11R6/lib/libX11.so.6
  • #43 XPending
    from /usr/X11R6/lib/libX11.so.6
  • #44 gdk_check_xpending
    at gdkevents-x11.c line 138
  • #45 gdk_event_prepare
    at gdkevents-x11.c line 2120
  • #46 g_main_context_prepare
    at gmain.c line 2260
  • #47 g_main_context_iterate
    at gmain.c line 2553
  • #48 g_main_loop_run
    at gmain.c line 2777
  • #49 gtk_main
    at gtkmain.c line 1173
  • #50 main
    at main.c line 96




------- Bug moved to this database by unknown@bugzilla.gnome.org 2005-05-19 18:27 UTC -------

Comment 1 Michael Meeks 2005-05-20 13:47:54 UTC
This is a duplicate of another bug - I forget which one. Basically the
CORBA_ORB_shutdown logic is mis-ordered - and beyond that - we should inhibit
all these 'broken' callbacks when we're shutting down anyway [ there were other
instances of this sort of problem ].
Comment 2 Christian Kirbach 2005-07-18 21:10:15 UTC

*** This bug has been marked as a duplicate of 149371 ***