Browse Source

Don't use sa_restorer for signal handler, init with memset instead

It's not available on all OSes, and it's better to initialize the
struct with memset anyway
tags/1.9.7
falkTX 9 years ago
parent
commit
e07f144bdc
1 changed files with 13 additions and 15 deletions
  1. +13
    -15
      source/bridges-plugin/CarlaBridgePlugin.cpp

+ 13
- 15
source/bridges-plugin/CarlaBridgePlugin.cpp View File

@@ -80,21 +80,19 @@ static void initSignalHandler()
#ifdef CARLA_OS_WIN
SetConsoleCtrlHandler(winSignalHandler, TRUE);
#elif defined(CARLA_OS_LINUX)
struct sigaction sterm;
struct sigaction susr1;

sterm.sa_handler = closeSignalHandler;
sterm.sa_flags = SA_RESTART;
sterm.sa_restorer = nullptr;
sigemptyset(&sterm.sa_mask);
sigaction(SIGTERM, &sterm, nullptr);
sigaction(SIGINT, &sterm, nullptr);

susr1.sa_handler = saveSignalHandler;
susr1.sa_flags = SA_RESTART;
susr1.sa_restorer = nullptr;
sigemptyset(&susr1.sa_mask);
sigaction(SIGUSR1, &susr1, nullptr);
struct sigaction sig;
carla_zeroStruct(sig);

sig.sa_handler = closeSignalHandler;
sig.sa_flags = SA_RESTART;
sigemptyset(&sig.sa_mask);
sigaction(SIGTERM, &sig, nullptr);
sigaction(SIGINT, &sig, nullptr);

sig.sa_handler = saveSignalHandler;
sig.sa_flags = SA_RESTART;
sigemptyset(&sig.sa_mask);
sigaction(SIGUSR1, &sig, nullptr);
#endif
}



Loading…
Cancel
Save