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 411652 - crash of "Software sources" in IA__gdk_keymap_get_direction()
crash of "Software sources" in IA__gdk_keymap_get_direction()
Status: RESOLVED NOTABUG
Product: pygtk
Classification: Bindings
Component: gtk
2.12.x
Other Linux
: Normal critical
: ---
Assigned To: Nobody's working on this now (help wanted and appreciated)
Python bindings maintainers
Depends on:
Blocks:
 
 
Reported: 2007-02-24 18:55 UTC by Sebastien Bacher
Modified: 2008-02-01 19:09 UTC
See Also:
GNOME target: ---
GNOME version: 2.19/2.20



Description Sebastien Bacher 2007-02-24 18:55:59 UTC
That bug has been described on https://launchpad.net/bugs/86698

"...
crash of "Software surces" while switching tabs
...
"

Debug backtrace for the crash with GTK 2.10.9:

Thread 1 (process 5911)

  • #0 IA__gdk_keymap_get_direction
    at gdkkeys-x11.c line 702
  • #1 gtk_text_view_check_keymap_direction
    at gtktextview.c line 5900
  • #2 gtk_text_view_ensure_layout
    at gtktextview.c line 5965
  • #3 gtk_text_view_update_layout_width
    at gtktextview.c line 1814
  • #4 gtk_text_view_value_changed
    at gtktextview.c line 6785
  • #5 _gtk_marshal_VOID__OBJECT_OBJECT
    at gtkmarshalers.c line 2202
  • #6 g_type_class_meta_marshal
    at gclosure.c line 567
  • #7 IA__g_closure_invoke
    at gclosure.c line 490
  • #8 signal_emit_unlocked_R
    at gsignal.c line 2478
  • #9 IA__g_signal_emit_valist
  • #10 IA__g_signal_emit
    at gsignal.c line 2243
  • #11 IA__gtk_widget_set_scroll_adjustments
    at gtkwidget.c line 3982
  • #12 gtk_scrolled_window_add
    at gtkscrolledwindow.c line 1560
  • #13 IA__g_cclosure_marshal_VOID__OBJECT
    at gmarshal.c line 636
  • #14 g_type_class_meta_marshal
    at gclosure.c line 567
  • #15 IA__g_closure_invoke
    at gclosure.c line 490
  • #16 signal_emit_unlocked_R
    at gsignal.c line 2370
  • #17 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #18 IA__g_signal_emit
    at gsignal.c line 2243
  • #19 IA__gtk_container_add
    at gtkcontainer.c line 959
  • #20 glade_standard_build_children
    from /usr/lib/libglade-2.0.so.0
  • #21 glade_xml_set_common_params
    from /usr/lib/libglade-2.0.so.0
  • #22 glade_xml_build_widget
    from /usr/lib/libglade-2.0.so.0

Comment 1 Sebastien Bacher 2008-02-01 17:52:03 UTC
that looks like a bug in gtk_text_view_check_keymap_direction (), gdk_keymap_get_for_display () is called to get the keymap and can return null and then gdk_keymap_get_direction() is call and crash on null argument
Comment 2 Sebastien Bacher 2008-02-01 18:02:08 UTC
keymap = GET_EFFECTIVE_KEYMAP (keymap) is used so it should handle keymap correctly, not sure what is going wrong there
Comment 3 Christian Kellner 2008-02-01 19:02:08 UTC
Actually that bug is caused by the pygtk changes of bug #316877. import pygtk will not fail when the display could not be opened but only spit out a warning message causing all pygtk applications that are not prepared for that to proceed with their logic most likely hitting a gtk function that needs a valid display (like gtk_text_view_check_keymap_direction) resulting in a crash inside of gtk. Of course you shouldnt use gtk when gtk_init_check () returns FALSE. So this is not a gtk bug, but a pygtk application bug. 

I'll reassign to pygtk therefore since its likely that a few applications will hit this (update-manager and Gdebi in ubuntu already did) leaving it to the pygtk folks to decided what do to with it (probably NOTABUG or something). ;-)
Comment 4 Johan (not receiving bugmail) Dahlin 2008-02-01 19:09:48 UTC
The change of not raising an error is documented:

http://live.gnome.org/PyGTK/WhatsNew210

Closing as NOTABUG.