Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:lafenghu
fwnn
FreeWnn-sighandler.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File FreeWnn-sighandler.patch of Package fwnn
--- BUILD/FreeWnn-1.1.1-a021/Wnn/jserver/de.c +++ BUILD/FreeWnn-1.1.1-a021/Wnn/jserver/de.c @@ -212,6 +212,19 @@ # include <tcpd.h> #endif /* HAVE_LIBWRAP */ +#ifndef NOTFORK +static void father_sighandler (const int sig) +{ + if (signal(sig, SIG_DFL) == SIG_ERR) + _exit (2); + + if (sig == SIGTERM) + _exit(0); + else + _exit(-1); +} +#endif + /* No arguments are used. Only options. */ int main (int argc, char *argv[]) @@ -248,14 +261,14 @@ { if (fork ()) { - signal (SIGCHLD, _exit); + signal (SIGCHLD, father_sighandler); signal (SIGHUP, SIG_IGN); signal (SIGINT, SIG_IGN); signal (SIGQUIT, SIG_IGN); #ifdef SIGTSTP signal (SIGTSTP, SIG_IGN); #endif - signal (SIGTERM, _exit); + signal (SIGTERM, father_sighandler); pause (); } }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor