From e07f144bdcd11d95c8d3fa125d9c4f7e55022c77 Mon Sep 17 00:00:00 2001 From: falkTX Date: Mon, 1 Aug 2016 12:28:35 +0200 Subject: [PATCH] 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 --- source/bridges-plugin/CarlaBridgePlugin.cpp | 28 ++++++++++----------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/source/bridges-plugin/CarlaBridgePlugin.cpp b/source/bridges-plugin/CarlaBridgePlugin.cpp index 82bc2f48d..af096c9a1 100644 --- a/source/bridges-plugin/CarlaBridgePlugin.cpp +++ b/source/bridges-plugin/CarlaBridgePlugin.cpp @@ -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 }