From: jmo Date: Wed, 30 Mar 2011 17:14:02 +0000 (+0000) Subject: DVB: ignore EINTR. which might be caused by watchdog signals. This is possibly not... X-Git-Url: http://g0dil.de/git?p=senf.git;a=commitdiff_plain;h=7a19a9f9feeae78a2abd1c0911103e058309add0 DVB: ignore EINTR. which might be caused by watchdog signals. This is possibly not the solution, but should work git-svn-id: https://svn.berlios.de/svnroot/repos/senf/trunk@1775 270642c3-0616-0410-b53a-bc976706d245 --- diff --git a/senf/Socket/Protocols/DVB/DVBFrontendHandle.cc b/senf/Socket/Protocols/DVB/DVBFrontendHandle.cc index 032b5db..8a95f1d 100644 --- a/senf/Socket/Protocols/DVB/DVBFrontendHandle.cc +++ b/senf/Socket/Protocols/DVB/DVBFrontendHandle.cc @@ -200,7 +200,7 @@ prefix_ dvb_frontend_event senf::DVBFrontendSocketProtocol::getEvent() const{ struct dvb_frontend_event ev ; ::memset(&ev, 0, sizeof(struct dvb_frontend_event)); - +std::cerr<<"DVBFrontendSocketProtocol::getEvent\n"; if (::ioctl(fd(), FE_GET_EVENT, &ev)) { switch(errno) { case EBADF: @@ -209,6 +209,9 @@ prefix_ dvb_frontend_event senf::DVBFrontendSocketProtocol::getEvent() const{ case EWOULDBLOCK: SENF_THROW_SYSTEM_EXCEPTION( "No event pending and device is in nonblocking mode." ); break; + case EINTR: + // TODO: ignore EINTR. which might be caused by watchdog signals. This is possibly not the solution, but should work + break; default: SENF_THROW_SYSTEM_EXCEPTION("Errno: ") << errno; }