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 135926 - GOK seg-faults at launch
GOK seg-faults at launch
Status: RESOLVED FIXED
Product: gok
Classification: Deprecated
Component: general
unspecified
Other Linux
: Urgent blocker
: ---
Assigned To: padraig.obriain
padraig.obriain
: 136200 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2004-03-02 03:34 UTC by korn
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: 2.5/2.6



Description korn 2004-03-02 03:34:16 UTC
Run gok from the command line.  Output is:
 Bonobo accessibility support initialized
 GTK Accessibility module initialized
 Atk Accessibility bridge initialized
 0 eveyt types available
 login mode = false
 Word prediction dictionary contains a total of 3000 words
 Segmentation fault

This is with the nightly Sun GNOME build from 1Mar04.
Accessibility flag is on, Keyboard accessibility enabled.  Sticky Keys can
be on or off; makes no difference.
Comment 1 Patrick Wade 2004-03-02 10:19:29 UTC
I've seen the same problem. Note that it didn't happen when I disabled
the a11y gconf key.


Here is a stack trace:


Program received signal SIGSEGV, Segmentation fault.

Thread 1024 (LWP 5114)

  • #0 g_object_set
    at gobject.c line 1207
  • #1 show_image_change_notify
    at gtkbutton.c line 1550
  • #2 gtk_button_screen_changed
    at gtkbutton.c line 1588
  • #3 g_cclosure_marshal_VOID__OBJECT
    at gmarshal.c line 636
  • #4 g_type_class_meta_marshal
    at gclosure.c line 514
  • #5 g_closure_invoke
    at gclosure.c line 437
  • #6 signal_emit_unlocked_R
    at gsignal.c line 2474
  • #7 g_signal_emit_valist
    at gsignal.c line 2195
  • #8 g_signal_emit
    at gsignal.c line 2239
  • #9 do_screen_change
    at gtkwidget.c line 4740
  • #10 gtk_widget_propagate_hierarchy_changed_recurse
    at gtkwidget.c line 4764
  • #11 _gtk_widget_propagate_hierarchy_changed
    at gtkwidget.c line 4804
  • #12 gtk_widget_set_parent
    at gtkwidget.c line 4265
  • #13 gtk_box_pack_start
    at gtkbox.c line 387
  • #14 gok_settingsdialog_open
    at gok-settings-dialog.c line 150
  • #15 gok_main_open
    at main.c line 491
  • #16 main
    at main.c line 285
  • #17 __libc_start_main
    from /lib/i686/libc.so.6

Comment 2 David Bolter 2004-03-02 14:15:22 UTC
I'm not seeing this problem.  I have a brand new gok, at-spi, and
gnome-control-center.  The rest of my gnome desktop is from Feb 16th.
Comment 3 David Bolter 2004-03-02 15:44:48 UTC
I wonder if this is a glib problem.  

Patrick, or Peter, can you try an earlier glib?
Comment 4 David Bolter 2004-03-02 16:23:54 UTC
Just upping the priority...
Comment 5 David Bolter 2004-03-02 16:31:07 UTC
I just installed glib head and still can't reproduce.  Still looking...
Comment 6 bill.haneman 2004-03-02 17:01:50 UTC
Does this happen on subsequent launches?  (I've seen it only once, and
could not reproduce).
Comment 7 bill.haneman 2004-03-02 17:03:45 UTC
I don't think the "regression" prefix is helpful here.
Comment 8 bill.haneman 2004-03-02 17:09:24 UTC
THis sure looks like a gtk+ problem from the stack trace (and the fact
that it recently surfaced without any changes to the gok startup code).
Comment 9 Patrick Wade 2004-03-02 17:10:40 UTC
Bill - this happens consistently on my system.
Comment 10 korn 2004-03-02 17:16:50 UTC
I think I've tracked down the problem (a separate e-mail from Bill
jogged my brain in the right direction).  I didn't realize the
significance at t6he time, but some days I ago I got a warning message
"You have a keyboard remapping file (.Xmodmap) in your home directory
whose contents will now be ignored.  You can use th ekeyboard
preferences to restore them."  Removing this file and doing a
`gnome-cleanup` fixed whatever wierdnesses were in my configuration. 

Patrick - I recommend you try that, and if that fixes it for you,
close the bug (as I was about to before I saw your comment).
Comment 11 bill.haneman 2004-03-02 17:27:40 UTC
Whew!
Comment 12 David Bolter 2004-03-02 20:25:18 UTC
Patrick, we're waiting on you ;-)  (
Comment 13 Patrick Wade 2004-03-03 10:01:03 UTC
Yes, this appears to be related to the newly described Xmodmap file.
Once this file is renamed, and you've relogged in, gok becomes useable
again.
Comment 14 David Bolter 2004-03-03 19:54:57 UTC
We should put something in the README.
Comment 15 bill.haneman 2004-03-04 08:26:56 UTC
This workaround doesn't always work (discovered in a new install of
yesterday's build, last night).  However, sometimes the problem "just
goes away" on a subsequent login anyhow.

We still can't reliably reproduce, but this bug is alive and out
there.  The stack trace shows that the problem appears in glib, in a
g_object_set_data call I think - it even happenned in the debugger,
and then it stopped happenning on a subsequent login.  Of course the
root cause could be anywhere, if it's a stray pointer or memory overwrite.
Comment 16 David Bolter 2004-03-04 14:54:17 UTC
FWIW, sometimes when things get wonky I go to a virtual console, bring
down X, do a bonobo-slay and blow away /tmp/orbit* -- Not sure that is
relevant here...  or if it is even good practise.
Comment 17 padraig.obriain 2004-03-04 18:07:02 UTC
I have been experiencing crashes on Solaris with the stack trace
similar to that above.
Comment 18 David Bolter 2004-03-04 18:44:10 UTC
*** Bug 136200 has been marked as a duplicate of this bug. ***
Comment 19 Rob Adams 2004-03-04 18:55:51 UTC
No .Xmodmap on my system where this problem happens every time.  I see
the same stacktrace.  This is running HEAD everything, as of yesterday.
Comment 20 David Bolter 2004-03-04 18:56:38 UTC
Okay, I still can't recreate this.  I've updated my gtk+ and
libgnomeui and I do get a:
(gok:11151): GLib-GObject-CRITICAL **: file gobject.c: line 1207
(g_object_set): assertion `G_IS_OBJECT (object)' failed

... at start up, but gok continues fine enough...
Comment 21 padraig.obriain 2004-03-05 09:59:57 UTC
David,

I have also seen this behavior.

I believe that the problem is with the creation of the Try button in
gok_settingsdialog_open(). If the statement gtk_button_set_label() at
line 143 is commented out then gok starts up.

I have a one line patch for gtkbutton.c which fixes the problem if the
call to gtk_button_set_label() is not commented out. See bug #136259.
In this case the label is set to Try but the stock icon is not
displayed. It looks like gtk+ does not support changing the text
associated with a stock icon. Did this once work?
Comment 22 padraig.obriain 2004-03-05 12:15:51 UTC
Should GTK_STOCK_APPLY be used instead of Try?
Comment 23 bill.haneman 2004-03-05 12:23:59 UTC
Padraig: changing a stock icon label did "once work".  Personally I
think changing to use STOCK_APPLY makes sense here however, since even
with your gtk+ patch you pointed out to me that the result would be
that the image in the 'Try' button would be removed by the set-label
command.

I will make the change to use stock apply.  Thanks SO MUCH for
tracking this down!
Comment 24 bill.haneman 2004-03-05 12:54:29 UTC
Fixed in cvs.
Comment 25 David Bolter 2004-03-05 14:53:43 UTC
Thanks Padraig (I just got in -- so nice to see this fixed guys!)