just ignore the FD_ISSET check in main.c of xfd, just call XPending (which does the same afair)
--- a/main.c Wed Feb 21 17:00:06 2007 +0100
+++ b/main.c Wed Feb 21 21:36:54 2007 +0100
@@ -325,12 +325,11 @@
}
drawstatus();
}
- if(FD_ISSET(xfd, &rd))
- while(XPending(dpy)) {
- XNextEvent(dpy, &ev);
- if(handler[ev.type])
- (handler[ev.type])(&ev); /* call handler */
- }
+ while(XPending(dpy)) {
+ XNextEvent(dpy, &ev);
+ if(handler[ev.type])
+ (handler[ev.type])(&ev); /* call handler */
+ }
}
cleanup();
XCloseDisplay(dpy);