On Mon, 11 Mar 2013 13:18:10 +1100 Lex Trotman <ele...@gmail.com> wrote:
> Geany currently uses SIGQUIT to terminate a running program (using the > execute menu item or toolbar button when it shows the stop icon). > This has always been the case since the stop button was added. > > There is a big comment in the code explaining why SIGQUIT is used, and > its problems: > > /* Unix: SIGQUIT is not the best signal to use because it causes a > core dump (this should not > * perforce necessary for just killing a process). But we must use a > signal which we can > * ignore because the main process get it too, it is declared to > ignore in main.c. */ > > ... > > My understanding of Unix/Linux signals is that the comment above is > wrong and always has been wrong, a signal sent to a child process by a > parent process does not get delivered to the parent. When you execute a gdb -exec-interrupt command in debugger or Scope, a SIGINT is sent to the inferior, and to gdb, and to Geany. But if you start gdb from a terminal, the signal is sent to inferior only. debugger moves gdb/inferior to a new process group, which sometimes fails. Scope disables SIGINT in Geany while debugging. glib spawn is much more complex than a normal fork/exec... -- E-gards: Jimmy _______________________________________________ Devel mailing list Devel@lists.geany.org https://lists.geany.org/cgi-bin/mailman/listinfo/devel