summaryrefslogtreecommitdiff
path: root/src/system
diff options
context:
space:
mode:
authorMax Kellermann <max@musicpd.org>2018-08-06 11:53:45 +0200
committerMax Kellermann <max@musicpd.org>2018-08-06 11:58:29 +0200
commitdd18fe34a733a18d49dbff46ce41efcf4e1dc0f7 (patch)
tree1a9eb0d7b20a0024f961d85c66e8b777ec0ab3d2 /src/system
parent5b09504a7178deb5bb2b5deadcdc42b413128206 (diff)
system/SignalFD: throw exception on error
Diffstat (limited to 'src/system')
-rw-r--r--src/system/SignalFD.cxx4
-rw-r--r--src/system/SignalFD.hxx3
2 files changed, 4 insertions, 3 deletions
diff --git a/src/system/SignalFD.cxx b/src/system/SignalFD.cxx
index 33062a396..d974b6630 100644
--- a/src/system/SignalFD.cxx
+++ b/src/system/SignalFD.cxx
@@ -20,7 +20,7 @@
#include "config.h"
#ifdef USE_SIGNALFD
#include "SignalFD.hxx"
-#include "FatalError.hxx"
+#include "Error.hxx"
#include <assert.h>
#include <sys/signalfd.h>
@@ -29,7 +29,7 @@ void
SignalFD::Create(const sigset_t &mask)
{
if (!fd.CreateSignalFD(&mask))
- FatalSystemError("signalfd() failed");
+ throw MakeErrno("signalfd() failed");
}
int
diff --git a/src/system/SignalFD.hxx b/src/system/SignalFD.hxx
index bf3c40ed6..bc589fa41 100644
--- a/src/system/SignalFD.hxx
+++ b/src/system/SignalFD.hxx
@@ -35,9 +35,10 @@ public:
/**
* Create the signalfd or update its mask.
*
- * All errors are fatal.
+ * Throws on error.
*/
void Create(const sigset_t &mask);
+
void Close() {
fd.Close();
}