rendered paste bodyIndex: libs/libmythtv/DeviceReadBuffer.cpp===================================================================--- libs/libmythtv/DeviceReadBuffer.cpp.orig+++ libs/libmythtv/DeviceReadBuffer.cpp@@ -330,8 +330,9 @@ bool DeviceReadBuffer::Poll(void) const VERBOSE(VB_IMPORTANT, LOC_ERR + "mingw DeviceReadBuffer::Poll is not implemented"); return false; #else+ bool poll_failed = false; bool retval = true; MythTimer timer; timer.start(); @@ -345,12 +346,22 @@ bool DeviceReadBuffer::Poll(void) const int ret = poll(&polls, 1 /*number of polls*/, 10 /*msec*/); if (polls.revents & (POLLERR | POLLHUP | POLLNVAL)) {- VERBOSE(VB_IMPORTANT, LOC + "poll error");- error = true;- return true;+ if (!poll_failed)+ {+ if (polls.revents & POLLERR)+ VERBOSE(VB_IMPORTANT, LOC_ERR + "POLLERR");+ if (polls.revents & POLLHUP)+ VERBOSE(VB_IMPORTANT, LOC_ERR + "POLLHUP");+ if (polls.revents & POLLNVAL)+ VERBOSE(VB_IMPORTANT, LOC_ERR + "POLLNVAL");+ }+ usleep(5000 /*5 ms*/);+ poll_failed = true;+ continue; }+ poll_failed = false; if (!run || !IsOpen() || IsPauseRequested()) { retval = false;