felixfung / skippy-xd

A window selector for X11 with Exposé and live preview Alt-Tab effects and more
GNU General Public License v2.0
23 stars 2 forks source link

100% CPU after long press closing all windows #100

Closed felixfung closed 6 months ago

felixfung commented 6 months ago

Follow up of #98

Long press closing windows no longer segfaults. However, CPU utilization is at 100%, until the next activation of skippy-xd.

I don't have any clue yet what is taking the CPU.

Tail output of skippy-xd ---start-daemon -S:

wm_get_stack_sub(): Retrieved window stack by querying all children.
mainloop(): else if (ev.type == PropertyNotify) {
mainloop(): else if (ev.type == PropertyNotify) {
mainloop(): else if (ev.type == PropertyNotify) {
mainloop(): else if (ev.type == PropertyNotify) {
mainloop(): else if (ev.type == PropertyNotify) {
mainloop(): else if (ev.type == MapNotify || ev.type == UnmapNotify) {
wm_get_stack_sub(): Retrieved window stack by querying all children.
mainloop(): else if (ev.type == DestroyNotify) {
wm_get_stack_sub(): Retrieved window stack by querying all children.
mainloop(): Last client window destroyed/unmapped, exiting.
mainloop(): else if (ev.type == MapNotify || ev.type == UnmapNotify) {
wm_get_stack_sub(): Retrieved window stack by querying all children.
mainloop(): else if (ev.type == DestroyNotify) {
wm_get_stack_sub(): Retrieved window stack by querying all children.
mainloop(): Last client window destroyed/unmapped, exiting.
mainloop(): else if (ev.type == MapNotify || ev.type == UnmapNotify) {
wm_get_stack_sub(): Retrieved window stack by querying all children.
mainloop(): else if (ev.type == DestroyNotify) {
wm_get_stack_sub(): Retrieved window stack by querying all children.
mainloop(): Last client window destroyed/unmapped, exiting.
mainloop(): else if (ev.type == DestroyNotify) {
wm_get_stack_sub(): Retrieved window stack by querying all children.
mainloop(): Last client window destroyed/unmapped, exiting.
mainwin_handle(): 
mainwin_handle(): 
mainwin_handle(): 
mainwin_handle(): 
mainwin_handle(): 
mainwin_handle(): 
mainwin_handle(): 
mainwin_handle(): 
mainwin_handle(): 
mainwin_handle(): 
mainwin_handle(): 

Importantly, the log does not grow, despite 100% CPU, indicating no active code is being run.

So, perhaps, X is doing something weird?