Always check the return value of select()

From: Erik Hovland <erik@hovland.org>


---

 libs/libmythtv/dvbstreamhandler.cpp |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/libs/libmythtv/dvbstreamhandler.cpp b/libs/libmythtv/dvbstreamhandler.cpp
index 5a2716a..5451457 100644
--- a/libs/libmythtv/dvbstreamhandler.cpp
+++ b/libs/libmythtv/dvbstreamhandler.cpp
@@ -306,7 +306,13 @@ void DVBStreamHandler::RunTS(void)
         {
             // timeout gets reset by select, so we need to create new one
             struct timeval timeout = { 0, 50 /* ms */ * 1000 /* -> usec */ };
-            select(dvr_fd+1, &fd_select_set, NULL, NULL, &timeout);
+            if (select(dvr_fd+1, &fd_select_set, NULL, NULL, &timeout) == -1 && errno != EINTR)
+            {
+                VERBOSE(VB_IMPORTANT,
+                        LOC_ERR + QString("select() failed with %1")
+                        .arg(strerror(errno)));
+                _error = true;
+            }
             len = read(dvr_fd, &(buffer[remainder]), buffer_size - remainder);
         }
 
