|
From: | John W. Eaton |
Subject: | Re: Conflicting signal handlers of octave and qt |
Date: | Thu, 13 Feb 2014 17:20:18 -0500 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20131005 Icedove/17.0.9 |
On 02/13/2014 03:47 PM, Torsten wrote:
There are several bug reports for the GUI that all seem to be related to a conflict between the octave and qt signal handler for SIGCHLD (https://savannah.gnu.org/bugs/?38305, especially comments #36 and #37). The mentioned issues are fixed by commenting out the line 640 in sighandlers.cc: 639 #ifdef SIGCHLD 640 octave_set_signal_handler (SIGCHLD, sigchld_handler); 641 #endif Octave's signal handling is beyond my knowledge. What is the purpose of the octave SIGCHLD-handler? Is there a chance for omitting the handler when running the gui?
If you look at the octave_signal_handler function, you'll see that when SIGCHLD has been caught, Octave waits for child processes that it knows about. The idea is to clean up after any processes started by Octave's system function so they don't become zombie processes.
jwe
[Prev in Thread] | Current Thread | [Next in Thread] |