X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=sources%2FSigHand.c;h=6b2cf95cf338ba4ae74ed25692c05b01f35aa362;hp=53d185a08f50be41176c66ac1683fa2c2e840b0e;hb=e3e15ed6d698e5cc35f3b7f4c5db96adc38255c3;hpb=9c3be0a6a901fad667ba1abcd8b46c712020cf26 diff --git a/sources/SigHand.c b/sources/SigHand.c index 53d185a..6b2cf95 100644 --- a/sources/SigHand.c +++ b/sources/SigHand.c @@ -22,7 +22,7 @@ * * Author: S. Piccardi Dec. 2002 * - * $Id: SigHand.c,v 1.2 2002/12/03 22:30:11 piccardi Exp $ + * $Id: SigHand.c,v 1.3 2002/12/11 00:51:38 piccardi Exp $ * *****************************************************************************/ #include /* error simbol definitions */ @@ -49,17 +49,15 @@ inline SigFunc * Signal(int signo, SigFunc *func) { struct sigaction new_handl, old_handl; - new_handl.sa_handler=func; + new_handl.sa_handler = func; /* set signal handler */ /* clear signal mask: no signal blocked during execution of func */ - if (sigemptyset(&new_handl.sa_mask)!=0){ /* initialize signal set */ - perror("cannot initializes the signal set to empty"); /* see mess. */ - exit(1); + if (sigemptyset(&new_handl.sa_mask)!=0){ /* initialize signal set */ + return SIG_ERR; } - new_handl.sa_flags=0; /* init to 0 all flags */ + new_handl.sa_flags=0; /* init to 0 all flags */ /* change action for signo signal */ if (sigaction(signo,&new_handl,&old_handl)){ - perror("sigaction failed on signal action setting"); - exit(1); + return SIG_ERR; } return (old_handl.sa_handler); } @@ -68,7 +66,7 @@ inline SigFunc * Signal(int signo, SigFunc *func) * Generic handler for SIGCHLD signal * * Simone Piccardi Dec. 2002 - * $Id: SigHand.c,v 1.2 2002/12/03 22:30:11 piccardi Exp $ + * $Id: SigHand.c,v 1.3 2002/12/11 00:51:38 piccardi Exp $ */ void HandSigCHLD(int sig) {