joewing / jwm

Joe's Window Manager
http://joewing.net/projects/jwm
MIT License
520 stars 84 forks source link

Retry select() on dynamic menu pipe if interrupted by SIGCHLD #577

Closed dimkr closed 2 years ago

dimkr commented 2 years ago

When running jwm -reload (with JWM master), read() may fail with EAGAIN because select() was unblocked by a SIGCHLD and the file descriptor is still not ready for reading. This leaves dynamic menus in some broken state: empty or truncated.

joewing commented 2 years ago

Good catch. Thanks!