Bug fixes for HECL

This commit is contained in:
Jack Andersen
2015-11-16 10:43:27 -10:00
parent d75c675f7a
commit 181a038901
3 changed files with 19 additions and 19 deletions

View File

@@ -118,10 +118,7 @@ class HIDListenerUdev final : public IHIDListener
}
/* Empty handler for SIGTERM */
static void _sigterm(int signo)
{
(void)signo;
}
static void _sigterm(int) {}
static void _udevProc(HIDListenerUdev* listener)
{
@@ -132,13 +129,6 @@ class HIDListenerUdev final : public IHIDListener
s.sa_flags = 0;
sigaction(SIGTERM, &s, nullptr);
/* SIGTERM will atomically become unblocked
* when pselect is entered */
sigset_t sigset, oldset;
sigemptyset(&sigset);
sigaddset(&sigset, SIGTERM);
pthread_sigmask(SIG_BLOCK, &sigset, &oldset);
udev_monitor_enable_receiving(listener->m_udevMon);
int fd = udev_monitor_get_fd(listener->m_udevMon);
while (listener->m_udevRunning)
@@ -146,7 +136,7 @@ class HIDListenerUdev final : public IHIDListener
fd_set fds;
FD_ZERO(&fds);
FD_SET(fd, &fds);
if (pselect(fd+1, &fds, nullptr, nullptr, nullptr, &oldset) < 0)
if (select(fd+1, &fds, nullptr, nullptr, nullptr) < 0)
{
/* SIGTERM handled here */
if (errno == EINTR)