1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

fix for macosx where SIGRTMIN is missing

This commit is contained in:
tomas@poseidon.(none)
2004-05-21 10:04:15 +00:00
parent 564ad4876d
commit cb07a07ed9
2 changed files with 13 additions and 3 deletions

View File

@ -161,6 +161,7 @@ tim@white.box
tim@work.mysql.com tim@work.mysql.com
tom@basil-firewall.home.com tom@basil-firewall.home.com
tomas@mc05.(none) tomas@mc05.(none)
tomas@poseidon.(none)
tonu@hundin.mysql.fi tonu@hundin.mysql.fi
tonu@volk.internalnet tonu@volk.internalnet
tonu@x153.internalnet tonu@x153.internalnet

View File

@ -228,16 +228,25 @@ systemInfo(const Configuration & config, const LogLevel & logLevel){
void void
catchsigs(bool ignore){ catchsigs(bool ignore){
#if ! defined NDB_SOFTOSE && !defined NDB_OSE #if ! defined NDB_SOFTOSE && !defined NDB_OSE
#if defined SIGRTMIN
#define MAX_SIG_CATCH SIGRTMIN
#elif defined NSIG
#define MAX_SIG_CATCH NSIG
#else
#error "neither SIGRTMIN or NSIG is defined on this platform, please report bug at bugs.mysql.com"
#endif
// Makes the main process catch process signals, eg installs a // Makes the main process catch process signals, eg installs a
// handler named "handler". "handler" will then be called is instead // handler named "handler". "handler" will then be called is instead
// of the defualt process signal handler) // of the defualt process signal handler)
if(ignore){ if(ignore){
for(int i = 1; i<SIGRTMIN; i++){ for(int i = 1; i < MAX_SIG_CATCH; i++){
if(i != SIGCHLD) if(i != SIGCHLD)
signal(i, SIG_IGN); signal(i, SIG_IGN);
} }
} else { } else {
for(int i = 1; i<SIGRTMIN; i++){ for(int i = 1; i < MAX_SIG_CATCH; i++){
signal(i, handler); signal(i, handler);
} }
} }