Bug#749629: immediate segfault on kfreebsd
Package: mate-screensaver
Version: 1.8.0-3
Severity: important
Hi,
mate-screensaver has an interesting crash on kfreebsd, which I think
is worth noting in case it could ever happen on Linux too.
It immediately and reproducibly crashes as soon as I activate it with
mate-screensaver-command -a
I haven't done any configuration of mate-screensaver; it is using
default settings.
Program received signal SIGSEGV, Segmentation fault.
0x0000000000000000 in ?? ()
(gdb) bt full
#0 0x0000000000000000 in ?? ()
No symbol table info available.
#1 0x000000000041ab78 in gs_fade_reset (fade=0x66c340) at gs-fade.c:919
i = 0
__FUNCTION__ = "gs_fade_reset"
#2 0x000000000040f79f in unfade_idle (manager=0x6998e0) at gs-manager.c:1204
__FUNCTION__ = "unfade_idle"
#3 0x000000080349d343 in ?? () from /lib/x86_64-kfreebsd-gnu/libglib-2.0.so.0
No symbol table info available.
#4 0x000000080349c925 in g_main_context_dispatch () from /lib/x86_64-kfreebsd-gnu/libglib-2.0.so.0
No symbol table info available.
#5 0x000000080349cc88 in ?? () from /lib/x86_64-kfreebsd-gnu/libglib-2.0.so.0
No symbol table info available.
#6 0x000000080349cf4a in g_main_loop_run () from /lib/x86_64-kfreebsd-gnu/libglib-2.0.so.0
No symbol table info available.
#7 0x0000000801009287 in gtk_main () from /usr/lib/x86_64-kfreebsd-gnu/libgtk-x11-2.0.so.0
No symbol table info available.
#8 0x000000000040a09e in main (argc=1, argv=0x7fffffffd658) at mate-screensaver.c:118
monitor = 0x62dd60
error = 0x0
show_version = 0
no_daemon = 1
debug = 0
entries = {{long_name = 0x41b02c "version", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x625d20 <show_version.51027>,
description = 0x41b034 "Version of this application", arg_description = 0x0}, {long_name = 0x41b050 "no-daemon", short_name = 0 '\000', flags = 0,
arg = G_OPTION_ARG_NONE, arg_data = 0x625be0 <no_daemon.51028>, description = 0x41b05a "Don't become a daemon", arg_description = 0x0}, {
long_name = 0x41b070 "debug", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x625d1c <debug.51029>,
description = 0x41b076 "Enable debugging code", arg_description = 0x0}, {long_name = 0x0, short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE,
arg_data = 0x0, description = 0x0, arg_description = 0x0}}
__FUNCTION__ = "main"
The problem is the uninitialised fade_finish function pointer here:
#1 0x000000000041ab78 in gs_fade_reset (fade=0x66c340) at gs-fade.c:919
919 fade->priv->screen_priv[i].fade_finish (fade, i);
Note the fade_type is actually FADE_TYPE_NONE:
(gdb) p *fade->priv->screen_priv
$3 = {fade_type = 0, num_ramps = 0, info = 0x0, rrscreen = 0x0, vmg = {red = 0, green = 0, blue = 0}, fade_setup = 0x0, fade_set_alpha_gamma = 0x0, fade_finish = 0x0}
I think because I don't have the XRANDR extension on the system I'm
testing with. check_randr_extension would initialise
screen_priv->fade_finish otherwise.
-- System Information:
Debian Release: jessie/sid
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'stable')
Architecture: kfreebsd-amd64 (x86_64)
Kernel: kFreeBSD 9.0-2-amd64-xenhvm
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages mate-screensaver depends on:
ii dbus-x11 1.6.14-1
ii libatk1.0-0 2.8.0-2
ii libc0.1 2.18-5
ii libcairo2 1.12.14-5
ii libdbus-1-3 1.6.14-1
ii libdbus-glib-1-2 0.100.2-1
ii libfontconfig1 2.11.0-1
ii libfreetype6 2.4.9-1.1
ii libgdk-pixbuf2.0-0 2.28.2-1
ii libgl1-mesa-glx [libgl1] 9.2.2-1
ii libglib2.0-0 2.40.0-3
ii libgtk2.0-0 2.24.22-1
ii libice6 2:1.0.8-2
ii libmate-desktop-2-17 1.8.1+dfsg1-1
ii libmate-menu2 1.8.0-2
ii libmatekbd4 1.8.0-2
ii libnotify4 0.7.6-2
ii libpam0g 1.1.8-1
ii libpango-1.0-0 1.36.2-2
ii libpangocairo-1.0-0 1.36.2-2
ii libpangoft2-1.0-0 1.36.2-2
ii libsm6 2:1.2.1-2
ii libstartup-notification0 0.12-3
ii libx11-6 2:1.6.1-1
ii libxext6 2:1.3.2-1
ii libxklavier16 5.2.1-1
ii libxss1 1:1.2.2-1
ii libxxf86vm1 1:1.1.3-1
ii mate-screensaver-common 1.8.0-3
ii mate-session-manager 1.8.1-2
Versions of packages mate-screensaver recommends:
pn mate-power-manager <none>
Versions of packages mate-screensaver suggests:
pn rss-glx <none>
pn xscreensaver-data <none>
-- no debconf information
Reply to: