Hello misc@, I'm using cwm on amd64 -current. I'm using the group feature and when using a "Java" application, cycling back to the group with this window cores dump cwm: (gdb) bt #0 0x000000020c8f354e in XRestackWindows () from /usr/X11R6/lib/libX11.so.15.0 #1 0x000000000040919d in group_show (sc=0x20ecf0400, gc=0x20ecf0530) at /usr/xenocara/app/cwm/group.c:138 #2 0x00000000004089af in xev_handle_keypress (ee=0x7f7ffffdaab0) at /usr/xenocara/app/cwm/xevents.c:313 #3 0x0000000000408add in xev_loop () at /usr/xenocara/app/cwm/xevents.c:423 #4 0x0000000000403d3b in main (argc=3, argv=Variable "argv" is not available. ) at /usr/xenocara/app/cwm/calmwm.c:90
Apparently, gc->nhidden is more or less corrupted: (gdb) p *(struct group_ctx *) gc $2 = {entry = {tqe_next = 0x20ecf0560, tqe_prev = 0x20ecf0500}, clients = { tqh_first = 0x2099aa800, tqh_last = 0x2099aac10}, shortcut = 2, hidden = 1, nhidden = 5393, highstack = 1} (gdb) p gc->clients->tqh_first $3 = (struct client_ctx *) 0x2099aa800 (gdb) p gc->clients->tqh_first->entry->tqe_next $4 = (struct client_ctx *) 0x2099aa600 (gdb) p gc->clients->tqh_first->entry->tqe_next->entry->tqe_next $5 = (struct client_ctx *) 0x2099aa000 (gdb) p gc->clients->tqh_first->entry->tqe_next->entry->tqe_next->entry->tqe_next $6 = (struct client_ctx *) 0x2099aac00 (gdb) p gc->clients->tqh_first->entry->tqe_next->entry->tqe_next->entry->tqe_next->entry->tqe_next $7 = (struct client_ctx *) 0x0 So I have 4 windows in this group, all of which are either: (gdb) p gc->clients->tqh_first->app_name $8 = 0x201c08680 "sun-awt-X11-XFramePeer" (gdb) p gc->clients->tqh_first->entry->tqe_next->app_name $9 = 0x201c08720 "sun-awt-X11-XDialogPeer" Actually, only 2 windows were displayed at this time, so I guess this is related to issues between Java and X11 I always heard about. The nhidden variable is only incremented in 2 places : group_hide and group_movetogroup, so I guess the root cause lie there. However I don't know enough of cwm internals to dig deeper. Therefore, I temporarily made the following patch: Index: group.c =================================================================== RCS file: /cvs/xenocara/app/cwm/group.c,v retrieving revision 1.54 diff -u -p -r1.54 group.c --- group.c 12 Oct 2011 15:43:50 -0000 1.54 +++ group.c 21 Dec 2011 22:54:11 -0000 @@ -135,7 +135,7 @@ group_show(struct screen_ctx *sc, struct } } - XRestackWindows(X_Dpy, winlist, gc->nhidden); + XRestackWindows(X_Dpy, winlist, gc->highstack); xfree(winlist); gc->hidden = 0; Anyone has a proper fix? Cheers, -- Thomas Jeunet