Paul Eggert wrote: > > + /* Set of currently blocked and pending signals. */ > > + static volatile char pending_array[NSIG] /* = { 0 } */; > > Surely this should be sig_atomic_t rather than char? > > > + int > > + sigfillset (sigset_t *set) > > + { > > + *set = -2U << (NSIG - 1); > > This doesn't look right to me, as it clears the set.
You're right on both. Thanks. I've fixed these and added the module. > I'm not a Windows expert, so I'm not sure how well the race conditions > will work out, but I assume that is a known issue. There shouldn't be more race conditions on Woe32 than on Unix: On both kinds of systems, the signal handlers are run in the main thread, not in a separate thread. Bruno