diff options
author | Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org> | 2002-11-19 02:12:55 +0000 |
---|---|---|
committer | Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org> | 2002-11-19 02:12:55 +0000 |
commit | bdaf558d2d6efd6767641eea81fa4a1a688d41a2 (patch) | |
tree | fc5ea325083a2771ae60ceac4aa3148e31cb8faa /net/dctc-gui/files/patch-src::main.c | |
parent | While we're at it, just upgrade to version 1.1 too. (diff) |
Add SIGCHLD signal(3) handling to prevent zombie processes
Diffstat (limited to 'net/dctc-gui/files/patch-src::main.c')
-rw-r--r-- | net/dctc-gui/files/patch-src::main.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/net/dctc-gui/files/patch-src::main.c b/net/dctc-gui/files/patch-src::main.c new file mode 100644 index 000000000000..f530ccac3963 --- /dev/null +++ b/net/dctc-gui/files/patch-src::main.c @@ -0,0 +1,36 @@ +--- src/main.c.orig Mon Nov 18 23:53:50 2002 ++++ src/main.c Mon Nov 18 23:55:01 2002 +@@ -43,6 +43,9 @@ + GtkWidget *done_popup=NULL; + GtkWidget *fav_popup=NULL; + ++/* sigchld handling */ ++extern void sig_chld(int); ++ + /* this string is "$HOME/.dctc" */ + GString *dctc_main_dir=NULL; + +@@ -289,11 +292,9 @@ + sigset_t set; + + /* ignore SIGPIPE */ +- /* ignore SIGCHLD */ + /* ignore SIGHUP */ + sigemptyset(&set); + sigaddset(&set,SIGPIPE); +- sigaddset(&set,SIGCHLD); + sigaddset(&set,SIGHUP); + act.sa_handler=SIG_IGN; + act.sa_mask=set; +@@ -301,8 +302,10 @@ + + sigprocmask(SIG_UNBLOCK,&set,NULL); + sigaction(SIGPIPE,&act,NULL); +- sigaction(SIGCHLD,&act,NULL); + sigaction(SIGHUP,&act,NULL); ++ ++ /* handle SIGCHLD */ ++ signal(SIGCHLD, sig_chld); /* Prevents zombies */ + } + + static void start_dctc_client_from_huburl(char *dchub_url,char *profile) |