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 657462 - gnome-settings-daemon crashed with SIGSEGV in XGetDeviceProperty()
gnome-settings-daemon crashed with SIGSEGV in XGetDeviceProperty()
Status: RESOLVED FIXED
Product: gnome-settings-daemon
Classification: Core
Component: mouse
3.1.x
Other Linux
: Normal critical
: ---
Assigned To: gnome-settings-daemon-maint
gnome-settings-daemon-maint
Depends on:
Blocks:
 
 
Reported: 2011-08-26 18:13 UTC by Pedro Villavicencio
Modified: 2011-08-27 17:30 UTC
See Also:
GNOME target: ---
GNOME version: 3.1/3.2


Attachments
mouse: be more careful to avoid segfaults (2.17 KB, patch)
2011-08-27 17:30 UTC, Matthias Clasen
committed Details | Review

Description Pedro Villavicencio 2011-08-26 18:13:57 UTC
this report has been filed here:

https://bugs.launchpad.net/ubuntu/+source/gnome-settings-daemon/+bug/817884

"I have an Apple Magic Trackpad, which I connect to my Computer using Bluetooth. That worked until yesterday. This morning, after the latest round of updates, gnome-settings-daemon first hangs for some 30 seconds (system seems to freeze), then finally crashes, when I click on the trackpad and it thus connects to the computer."

".

Thread 1 (Thread 1684)

  • #0 XGetDeviceProperty
    at ../../src/XGetDProp.c line 62
  • #1 device_is_touchpad
    at gsd-input-helper.c line 142
  • #2 set_motion
    at gsd-mouse-manager.c line 409
  • #3 set_mouse_settings
    at gsd-mouse-manager.c line 862
  • #4 device_added_cb
    at gsd-mouse-manager.c line 960
  • #5 device_added_cb
    at gsd-mouse-manager.c line 954
  • #6 g_closure_invoke
    at /build/buildd/glib2.0-2.29.14/./gobject/gclosure.c line 773
  • #7 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.29.14/./gobject/gsignal.c line 3271
  • #8 g_signal_emit_valist
    at /build/buildd/glib2.0-2.29.14/./gobject/gsignal.c line 3002
  • #9 g_signal_emit_by_name
    at /build/buildd/glib2.0-2.29.14/./gobject/gsignal.c line 3096
  • #10 add_device
    at /build/buildd/gtk+3.0-3.1.10/./gdk/x11/gdkdevicemanager-xi2.c line 334
  • #11 handle_hierarchy_changed
    at /build/buildd/gtk+3.0-3.1.10/./gdk/x11/gdkdevicemanager-xi2.c line 586
  • #12 gdk_x11_device_manager_xi2_translate_event
    at /build/buildd/gtk+3.0-3.1.10/./gdk/x11/gdkdevicemanager-xi2.c line 1046
  • #13 gdk_x11_device_manager_xi2_translate_event
    at /build/buildd/gtk+3.0-3.1.10/./gdk/x11/gdkdevicemanager-xi2.c line 1007
  • #14 _gdk_x11_event_translator_translate
    at /build/buildd/gtk+3.0-3.1.10/./gdk/x11/gdkeventtranslator.c line 53
  • #15 gdk_event_source_translate_event
    at /build/buildd/gtk+3.0-3.1.10/./gdk/x11/gdkeventsource.c line 242
  • #16 _gdk_x11_display_queue_events
    at /build/buildd/gtk+3.0-3.1.10/./gdk/x11/gdkeventsource.c line 334
  • #17 gdk_display_get_event
    at /build/buildd/gtk+3.0-3.1.10/./gdk/gdkdisplay.c line 311
  • #18 gdk_event_source_dispatch
    at /build/buildd/gtk+3.0-3.1.10/./gdk/x11/gdkeventsource.c line 356
  • #19 g_main_dispatch
    at /build/buildd/glib2.0-2.29.14/./glib/gmain.c line 2500
  • #20 g_main_context_dispatch
    at /build/buildd/glib2.0-2.29.14/./glib/gmain.c line 3083
  • #21 g_main_context_iterate
    at /build/buildd/glib2.0-2.29.14/./glib/gmain.c line 3161
  • #22 g_main_loop_run
    at /build/buildd/glib2.0-2.29.14/./glib/gmain.c line 3369
  • #23 gtk_main
    at /build/buildd/gtk+3.0-3.1.10/./gtk/gtkmain.c line 1367
  • #24 main
    at main.c line 455

Comment 1 Matthias Clasen 2011-08-27 17:30:40 UTC
The following fix has been pushed:
ababd23 mouse: be more careful to avoid segfaults
Comment 2 Matthias Clasen 2011-08-27 17:30:45 UTC
Created attachment 194934 [details] [review]
mouse: be more careful to avoid segfaults

It appears that X can sometimes give us NULL for a device,
but then can't handle given NULL back as a device :-(