Mercurial > emacs
changeset 74420:7f2e7cb6b161
(parse_signal): Rename macro from handle_signal.
(Fsignal_process): Also accept lower-case variants of signal
names (to align with signal names generated by Emacs itself).
author | Kim F. Storm <storm@cua.dk> |
---|---|
date | Mon, 04 Dec 2006 15:21:39 +0000 |
parents | 9d28e2b1c05c |
children | 658f67519f93 |
files | src/process.c |
diffstat | 1 files changed, 40 insertions(+), 40 deletions(-) [+] |
line wrap: on
line diff
--- a/src/process.c Mon Dec 04 15:21:04 2006 +0000 +++ b/src/process.c Mon Dec 04 15:21:39 2006 +0000 @@ -6147,8 +6147,8 @@ got_it: -#define handle_signal(NAME, VALUE) \ - else if (!strcmp (name, NAME)) \ +#define parse_signal(NAME, VALUE) \ + else if (!strcasecmp (name, NAME)) \ XSETINT (sigcode, VALUE) if (INTEGERP (sigcode)) @@ -6160,106 +6160,106 @@ CHECK_SYMBOL (sigcode); name = SDATA (SYMBOL_NAME (sigcode)); - if (!strncmp(name, "SIG", 3)) + if (!strncasecmp(name, "sig", 3)) name += 3; if (0) ; +#ifdef SIGUSR1 + parse_signal ("usr1", SIGUSR1); +#endif +#ifdef SIGUSR2 + parse_signal ("usr2", SIGUSR2); +#endif +#ifdef SIGTERM + parse_signal ("term", SIGTERM); +#endif #ifdef SIGHUP - handle_signal ("HUP", SIGHUP); + parse_signal ("hup", SIGHUP); #endif #ifdef SIGINT - handle_signal ("INT", SIGINT); + parse_signal ("int", SIGINT); #endif #ifdef SIGQUIT - handle_signal ("QUIT", SIGQUIT); + parse_signal ("quit", SIGQUIT); #endif #ifdef SIGILL - handle_signal ("ILL", SIGILL); + parse_signal ("ill", SIGILL); #endif #ifdef SIGABRT - handle_signal ("ABRT", SIGABRT); + parse_signal ("abrt", SIGABRT); #endif #ifdef SIGEMT - handle_signal ("EMT", SIGEMT); + parse_signal ("emt", SIGEMT); #endif #ifdef SIGKILL - handle_signal ("KILL", SIGKILL); + parse_signal ("kill", SIGKILL); #endif #ifdef SIGFPE - handle_signal ("FPE", SIGFPE); + parse_signal ("fpe", SIGFPE); #endif #ifdef SIGBUS - handle_signal ("BUS", SIGBUS); + parse_signal ("bus", SIGBUS); #endif #ifdef SIGSEGV - handle_signal ("SEGV", SIGSEGV); + parse_signal ("segv", SIGSEGV); #endif #ifdef SIGSYS - handle_signal ("SYS", SIGSYS); + parse_signal ("sys", SIGSYS); #endif #ifdef SIGPIPE - handle_signal ("PIPE", SIGPIPE); + parse_signal ("pipe", SIGPIPE); #endif #ifdef SIGALRM - handle_signal ("ALRM", SIGALRM); -#endif -#ifdef SIGTERM - handle_signal ("TERM", SIGTERM); + parse_signal ("alrm", SIGALRM); #endif #ifdef SIGURG - handle_signal ("URG", SIGURG); + parse_signal ("urg", SIGURG); #endif #ifdef SIGSTOP - handle_signal ("STOP", SIGSTOP); + parse_signal ("stop", SIGSTOP); #endif #ifdef SIGTSTP - handle_signal ("TSTP", SIGTSTP); + parse_signal ("tstp", SIGTSTP); #endif #ifdef SIGCONT - handle_signal ("CONT", SIGCONT); + parse_signal ("cont", SIGCONT); #endif #ifdef SIGCHLD - handle_signal ("CHLD", SIGCHLD); + parse_signal ("chld", SIGCHLD); #endif #ifdef SIGTTIN - handle_signal ("TTIN", SIGTTIN); + parse_signal ("ttin", SIGTTIN); #endif #ifdef SIGTTOU - handle_signal ("TTOU", SIGTTOU); + parse_signal ("ttou", SIGTTOU); #endif #ifdef SIGIO - handle_signal ("IO", SIGIO); + parse_signal ("io", SIGIO); #endif #ifdef SIGXCPU - handle_signal ("XCPU", SIGXCPU); + parse_signal ("xcpu", SIGXCPU); #endif #ifdef SIGXFSZ - handle_signal ("XFSZ", SIGXFSZ); + parse_signal ("xfsz", SIGXFSZ); #endif #ifdef SIGVTALRM - handle_signal ("VTALRM", SIGVTALRM); + parse_signal ("vtalrm", SIGVTALRM); #endif #ifdef SIGPROF - handle_signal ("PROF", SIGPROF); + parse_signal ("prof", SIGPROF); #endif #ifdef SIGWINCH - handle_signal ("WINCH", SIGWINCH); + parse_signal ("winch", SIGWINCH); #endif #ifdef SIGINFO - handle_signal ("INFO", SIGINFO); -#endif -#ifdef SIGUSR1 - handle_signal ("USR1", SIGUSR1); -#endif -#ifdef SIGUSR2 - handle_signal ("USR2", SIGUSR2); + parse_signal ("info", SIGINFO); #endif else error ("Undefined signal name %s", name); } -#undef handle_signal +#undef parse_signal return make_number (kill (pid, XINT (sigcode))); }