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 618925 - gnome-screensaver crashed with SIGSEGV in gs_manager_set_active()
gnome-screensaver crashed with SIGSEGV in gs_manager_set_active()
Status: RESOLVED OBSOLETE
Product: gnome-screensaver
Classification: Deprecated
Component: daemon
2.30.x
Other Linux
: Normal normal
: ---
Assigned To: gnome-screensaver maintainers
gnome-screensaver maintainers
Depends on:
Blocks:
 
 
Reported: 2010-05-17 20:47 UTC by Chris Coulson
Modified: 2014-08-20 20:23 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
0001-Don-t-crash-on-systems-that-don-t-support-XF86VM-or-.patch (1.16 KB, patch)
2010-05-17 20:52 UTC, Chris Coulson
none Details | Review
Adds the fade type checking to reset and finalize (1.60 KB, patch)
2010-07-05 14:42 UTC, Richard Fuller
none Details | Review

Description Chris Coulson 2010-05-17 20:47:00 UTC
gnome-screensaver crashes when locking on X servers which don't support XRANDR or XF86VM gamma fade

  • #0 ??
  • #1 gs_fade_start
    at gs-fade.c line 730
  • #2 gs_manager_set_active
    at gs-manager.c line 1761
  • #3 listener_active_changed_cb
    at gs-monitor.c line 247
  • #4 gs_marshal_BOOLEAN__BOOLEAN
    at gs-marshal.c line 159
  • #5 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #6 ??
    from /usr/lib/libgobject-2.0.so.0
  • #7 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #8 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #9 gs_listener_set_active
    at gs-listener-dbus.c line 416
  • #10 listener_lock_cb
    at gs-monitor.c line 180
  • #11 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #12 ??
    from /usr/lib/libgobject-2.0.so.0
  • #13 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #14 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #15 listener_dbus_handle_session_message
    at gs-listener-dbus.c line 1375
  • #16 listener_dbus_filter_function
    at gs-listener-dbus.c line 1691
  • #17 dbus_connection_dispatch
    at dbus-connection.c line 4444
  • #18 message_queue_dispatch
    at dbus-gmain.c line 101
  • #19 g_main_context_dispatch
    from /lib/libglib-2.0.so.0
  • #20 ??
    from /lib/libglib-2.0.so.0
  • #21 g_main_loop_run
    from /lib/libglib-2.0.so.0
  • #22 IA__gtk_main
    at /build/buildd/gtk+2.0-2.20.0/gtk/gtkmain.c line 1219
  • #23 main
    at gnome-screensaver.c line 111

It could really do with a check around the fade_setup calls so that this virtual function is not called when the fade_type is FADE_TYPE_NONE
Comment 1 Chris Coulson 2010-05-17 20:52:35 UTC
Created attachment 161269 [details] [review]
0001-Don-t-crash-on-systems-that-don-t-support-XF86VM-or-.patch
Comment 2 William Jon McCann 2010-06-21 18:55:59 UTC
Makes sense.  Thanks for the patch!
Comment 3 Richard Fuller 2010-07-05 14:42:09 UTC
Created attachment 165286 [details] [review]
Adds the fade type checking to reset and finalize

This doesn't appear to be quite complete. It fixes gs_fade_start, but not gs_fade_reset or gs_fade_finalize.

I've attached a patch to fix those. This makes test-fade in the src directory complete successfully on systems that don't support either of the fade methods. (e.g. NX servers.)

(I originally fixed this by just checking the pointers weren't null before calling them, but then found this bug, so rewrote it in the same way.)
Comment 4 Chris Coulson 2010-07-05 14:58:37 UTC
Ah, I fixed the call in gs_fade_reset some months ago in Ubuntu, but forgot to attach the updated patch here (http://bazaar.launchpad.net/~ubuntu-desktop/gnome-screensaver/ubuntu/annotate/77/debian/patches/15_dont_crash_on_no_fade.patch), sorry about that.

I guess users never noticed it crashes in gs_fade_finalize, as that's only called normally when shutting down
Comment 5 Rodrigo Moya 2010-11-15 16:05:07 UTC
Part of the patch is not in git master, so re-opening
Comment 6 Bastien Nocera 2014-08-20 20:23:46 UTC
The screen lock is now implemented directly in gnome-shell, not in
gnome-screensaver (as it was with older version of GNOME 3 and GNOME 2.x).

If the reported problems persists in recent versions of GNOME, please file a new bug against gnome-shell with the "lock-screen" component selected.

If your installation is an older version of GNOME that cannot be upgraded (such as an enterprise version), please use the appropriate support mechanism from your vendor, or your distribution instead.