I have a C program that sets a handler for SIGALRM, but it doesn't get called. sigprocmask() shows that SIGALRM is blocked when the program starts. Evidently it is inheriting a signal mask that blocks it, from some ancestor process. The most likely candidate seems to be something in XQuartz, because: - it happens when I'm using in my login shell (bash) in an xterm - it doesn't happen if I run csh, and then run the program from there (presumably csh clears the mask) - it doesn't happen if I run csh, and from csh run bash, and then run the program from there (so it isn't bash setting it) - it doesn't happen if I run it from my login shell (bash) in Terminal.app - it doesn't happen if I ssh to localhost and run it from there I'm running Quartz 2.8.5. -- Richard The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336. Is e buidheann carthannais a th’ ann an Oilthigh Dhùn Èideann, clàraichte an Alba, àireamh clàraidh SC005336.
participants (1)
-
Richard Tobin