Fix build for systems without SIGRTMIN/SIGRTMAX
This commit is contained in:
+5
-1
@@ -55,9 +55,11 @@ static void catchSignals(waybar::SafeSignal<int>& signal_handler) {
|
|||||||
std::signal(SIGINT, writeSignalToPipe);
|
std::signal(SIGINT, writeSignalToPipe);
|
||||||
std::signal(SIGCHLD, writeSignalToPipe);
|
std::signal(SIGCHLD, writeSignalToPipe);
|
||||||
|
|
||||||
|
#ifdef SIGRTMIN
|
||||||
for (int sig = SIGRTMIN + 1; sig <= SIGRTMAX; ++sig) {
|
for (int sig = SIGRTMIN + 1; sig <= SIGRTMAX; ++sig) {
|
||||||
std::signal(sig, writeSignalToPipe);
|
std::signal(sig, writeSignalToPipe);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
while (true) {
|
while (true) {
|
||||||
int signum;
|
int signum;
|
||||||
@@ -119,13 +121,15 @@ void handleUserSignal(int signal, bool& reload) {
|
|||||||
// If this signal should restart or close the bar, this function will write
|
// If this signal should restart or close the bar, this function will write
|
||||||
// `true` or `false`, respectively, into `reload`.
|
// `true` or `false`, respectively, into `reload`.
|
||||||
static void handleSignalMainThread(int signum, bool& reload) {
|
static void handleSignalMainThread(int signum, bool& reload) {
|
||||||
|
#ifdef SIGRTMIN
|
||||||
if (signum >= SIGRTMIN + 1 && signum <= SIGRTMAX) {
|
if (signum >= SIGRTMIN + 1 && signum <= SIGRTMAX) {
|
||||||
for (auto& bar : waybar::Client::inst()->bars) {
|
for (auto& bar : waybar::Client::inst()->bars) {
|
||||||
bar->handleSignal(signum);
|
bar->handleSignal(signum);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
switch (signum) {
|
switch (signum) {
|
||||||
case SIGUSR1:
|
case SIGUSR1:
|
||||||
handleUserSignal(SIGUSR1, reload);
|
handleUserSignal(SIGUSR1, reload);
|
||||||
|
|||||||
Reference in New Issue
Block a user