GNOME Bugzilla – Bug 686468
segmentation fault trying to set dpms mode
Last modified: 2012-10-20 10:18:05 UTC
Some time after the blank screensaver kicks in, if I move the mouse (to exit screensaver), gnome-settings-daemon crashes and I get the old/default gtk theme. I'm running Arch Linux, and this is the output I could get with gdb: (gnome-settings-daemon:17920): power-plugin-WARNING **: Failed set DPMS mode: Could not change DPMS mode [1350656941,000,xklavier.c:xkl_engine_start_listen/] The backend does not require manual layout management - but it is provided by the application [Thread 0x7fffdf7fe700 (LWP 17928) exited] [Thread 0x7fffdffff700 (LWP 17927) exited] [Thread 0x7ffff0b75700 (LWP 17924) exited] [Thread 0x7ffff1376700 (LWP 17923) exited] (gnome-settings-daemon:17920): power-plugin-WARNING **: failed to turn the panel off: Could not change DPMS mode (gnome-settings-daemon:17920): GLib-GIO-CRITICAL **: g_dbus_proxy_call_sync_internal: assertion `error == NULL || *error == NULL' failed (gnome-settings-daemon:17920): power-plugin-WARNING **: failed to turn the kbd backlight off: (null) Program received signal SIGSEGV, Segmentation fault. 0x00007ffff68f94cf in g_slice_alloc () from /usr/lib/libglib-2.0.so.0 (gdb) bt
+ Trace 231069
Created attachment 226829 [details] [review] power: Fix possible crashers reusing set GError When setting the panel's backlight can't be turned off for example, switching off the keyboard's backlight will fail as well, as the error will be invalid for use.
Review of attachment 226829 [details] [review]: It's good.
Patch seems to fix the issue, thanks.
I wonder if all the other g_error_free() calls wouldn't be better if replaced to also use g_clear_error() in order to avoid illegally reusing the error variable in future code adds...
Attachment 226829 [details] pushed as 0435e06 - power: Fix possible crashers reusing set GError