crash in make_shadow()
Xfwm4 segfaults when Microsoft Word 2010 is started under WINE.
Environment:
- openSUSE 15.4 x64
- xfwm4 version 4.18.0 (revision 7e7473c5), installed using rpm package version 4.18.0-lp154.108.3 taken from repo https://download.opensuse.org/repositories/X11:/xfce/15.4/
- WINE x32 version 7.0 and also 8.8.
- MS Word 2010, which uses its own window theming. More simple WINE apps like
winemine
,winecfg
are not affected.
Core file analysis with GDB:
Core was generated by `xfwm4'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 make_shadow (height=<optimized out>, width=<optimized out>, opacity=<optimized out>, screen_info=0x556fc1bf4570) at compositor.c:615
[Current thread is 1 (Thread 0x7f1a24540a80 (LWP 2063))]
(gdb) bt
#0 make_shadow (height=<optimized out>, width=<optimized out>, opacity=<optimized out>, screen_info=0x556fc1bf4570) at compositor.c:615
#1 shadow_picture (hp=0x1015f, wp=0x1015b, height=<optimized out>, width=<optimized out>, opacity=<optimized out>, screen_info=0x556fc1bf4570) at compositor.c:640
#2 win_extents (cw=cw@entry=0x556fc20ef7e0) at compositor.c:2019
#3 0x0000556fc0e1b133 in damage_win (cw=0x556fc20ef7e0) at compositor.c:2988
#4 0x0000556fc0e1b268 in update_opaque_region (cw=cw@entry=0x556fc20ef7e0, id=id@entry=77594630) at compositor.c:3297
#5 0x0000556fc0e1bc65 in add_win (display_info=0x556fc1d57800, id=77594630, c=0x0) at compositor.c:3422
#6 0x0000556fc0e1e4fc in compositorHandleCreateNotify (ev=0x7fffa603ab20, display_info=0x556fc1d57800) at compositor.c:4067
#7 compositorHandleEvent (display_info=display_info@entry=0x556fc1d57800, ev=0x7fffa603ab20) at compositor.c:4589
#8 0x0000556fc0e24a3b in handleEvent (event=<optimized out>, display_info=0x556fc1d57800) at events.c:2288
#9 xfwm4_event_filter (event=0x556fc1d8ab40, data=0x556fc1d57800) at events.c:2302
#10 0x0000556fc0e23312 in eventXfwmFilter (gdk_xevent=<optimized out>, gevent=<optimized out>, data=<optimized out>) at event_filter.c:175
#11 0x00007f1a2c3893df in () at /usr/lib64/libgdk-3.so.0
#12 0x00007f1a2c3896c9 in () at /usr/lib64/libgdk-3.so.0
#13 0x00007f1a2c3527d0 in gdk_display_get_event () at /usr/lib64/libgdk-3.so.0
#14 0x00007f1a2c389472 in () at /usr/lib64/libgdk-3.so.0
#15 0x00007f1a2b3d082b in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#16 0x00007f1a2b3d0bd0 in () at /usr/lib64/libglib-2.0.so.0
#17 0x00007f1a2b3d0ea2 in g_main_loop_run () at /usr/lib64/libglib-2.0.so.0
#18 0x00007f1a2c8670e5 in gtk_main () at /usr/lib64/libgtk-3.so.0
#19 0x0000556fc0e1151b in main (argc=<optimized out>, argv=<optimized out>) at main.c:764
If the XFCE4 setting 'Window Manager Tweaks/Compositor/Shows shadows under regular windows' is disabled, the xfwm4 crash is NOT triggered. When the setting is enabled, Word 2010 leads to unconditional xfwm4 segfault...
The crash was NOT triggered under the same environment but with xfwm4 4.16.