mirror of
https://github.com/badaix/snapcast.git
synced 2025-05-19 12:06:15 +02:00
fix signal-unsafe call inside of a signal
This commit is contained in:
parent
f045602915
commit
1690f5ccc1
3 changed files with 41 additions and 48 deletions
|
@ -40,9 +40,6 @@
|
|||
#include "config.h"
|
||||
|
||||
|
||||
volatile sig_atomic_t g_terminated = false;
|
||||
std::condition_variable terminateSignaled;
|
||||
|
||||
using namespace std;
|
||||
using namespace popl;
|
||||
|
||||
|
@ -201,10 +198,6 @@ int main(int argc, char* argv[])
|
|||
settings.stream.pcmStreams.push_back(streamValue->value(n));
|
||||
}
|
||||
|
||||
signal(SIGHUP, signal_handler);
|
||||
signal(SIGTERM, signal_handler);
|
||||
signal(SIGINT, signal_handler);
|
||||
|
||||
#ifdef HAS_DAEMON
|
||||
std::unique_ptr<Daemon> daemon;
|
||||
if (daemonOption->is_set())
|
||||
|
@ -270,9 +263,8 @@ int main(int argc, char* argv[])
|
|||
|
||||
std::thread t([&] { io_context.run(); });
|
||||
|
||||
while (!g_terminated)
|
||||
chronos::sleep(100);
|
||||
|
||||
auto sig = install_signal_handler({SIGHUP, SIGTERM, SIGINT}).get();
|
||||
SLOG(INFO) << "Received signal " << sig << ": " << strsignal(sig) << "\n";
|
||||
io_context.stop();
|
||||
t.join();
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue