Found a nice crasher for xfwm4...
Run xine-ui (CVS HEAD will do) and open various of its windows:: controls,
open file, open playlist, open location, playlist load, playlist editor.
Toggle to and from full-screen mode repeatedly; sooner or later, it'll
segfault. A typical backtrace is attached.
As far as I can tell, this is happening as a result of a ShapeNotify event
on a window: the CWindow struct looks valid, but it contains a pointer to a
broken Client struct. (It may be that the pointer itself is invalid.)
The window size _suggests_ that the problem window may be xine's full-screen
window (the size parameters for resize_win() match the screen size).
Certainly, other strange things are happening to xine windows, such as its
top-level menu gaining a frame...
#0 0x00002b8c64a9cde0 in raise () from /lib/libc.so.6
#1 0x00002b8c64a9e290 in abort () from /lib/libc.so.6
#2 0x00002b8c6410e47b in g_logv () from /usr/lib/libglib-2.0.so.0
#3 0x00002b8c6410e503 in g_log () from /usr/lib/libglib-2.0.so.0
#4 0x0000000000435eff in handleSignal (sig=11) at main.c:128
#5 <signal handler called>
#6 0x000000000042c8fd in frameTop (c=0x6dcd60) at frame.c:115
#7 0x000000000042cba8 in frameY (c=0x6dcd60) at frame.c:159
#8 0x000000000041a582 in client_size (cw=0x6d5250) at compositor.c:648
#9 0x000000000041ceab in fix_region (cw=0x6db5d0, region=12603706)
#10 0x000000000041e78c in resize_win (cw=0x6db5d0, x=0, y=0, width=1280,
height=1024, bw=0, shape_notify=1) at compositor.c:2042
#11 0x000000000041f662 in compositorHandleShapeNotify (display_info=0x5b9170,
ev=0x7fff48654ba0) at compositor.c:2360
#12 0x000000000041fb1f in compositorHandleEvent (display_info=0x5b9170,
ev=0x7fff48654ba0) at compositor.c:2498
#13 0x00000000004298bc in handleEvent (display_info=0x5b9170,
ev=0x7fff48654ba0) at events.c:2163
#14 0x0000000000429b06 in xfwm4_event_filter (xevent=0x7fff48654ba0,
data=0x5b9170) at events.c:2248
#15 0x00000000004233d3 in eventXfwmFilter (gdk_xevent=0x7fff48654ba0,
event=0x6d25e0, data=0x6c8150) at event_filter.c:159
#16 0x00002b8c62f71d85 in gdk_events_pending ()
#17 0x00002b8c62f7257f in gdk_x11_register_standard_event_type ()
#18 0x00002b8c62f74128 in _gdk_events_queue ()
#19 0x00002b8c62f7427e in _gdk_events_queue ()
#20 0x00002b8c64106149 in g_main_context_dispatch ()
#21 0x00002b8c641092b5 in g_main_context_check ()
#22 0x00002b8c641095b6 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#23 0x00002b8c62b18252 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#24 0x0000000000436e1e in main (argc=1, argv=0x7fff48654fb8) at main.c:587
Patches applied: my switch-no-raise patch, and a reversion of the part of rev. 22470 which applies to src/keyboard.c.
Just had xfwm4 (well, presumably xfwm4) start munching CPU time then, within a minute, it had exited. No more info than that ATM, but it could be the same problem...
Should be fixed in svn now, can you update to rev. 22776 and report?
Well... it *seems* to be fixed. I'm seeing xine fall over with a BadWindow error and a segfault (usually the segfault), but this looks like xine-ui bugginess.
Closing for now; if I see the problem again, I'll reopen this.