I am hoping someone on this list can answer this question. I have notice that during certain situations signal handlers I set up are ignored in my wxPerl application. Especially while modal dialogs are open.
For example, I fork() a process to run a subroutine asynchronously, setting up the $SIG{CHLD} handler for when the sub-process completes. I open a modal dialog which alerts the user that the process is running and there is a button on it that allows them to cancel the action. However, after the subprocess completes, the handler is not called. It is only when I close the modal dialog that the handler then gets called. Why is this happening? I have noticed this behavior with other signals as well, like SIGINT. Is the wxWidgets mainloop deliberately ignoring all signals? Does it have something to do with the event processing? I have already read about using threads, but that would require reworking the code quite a bit, and I am not certain I won't run into other problems. Anyone? --------------------------------- Jim Clark Senior Software Engineer, SMT Apple, Inc 408-974-9906 (office) 408-781-1425 (cell)