mirror of
https://projects.vdr-developer.org/git/vdr-plugin-streamdev.git
synced 2023-10-10 19:16:51 +02:00
Use select with timeout and check if streamdev-server has to shutdown
(#135). Thanks to Urig@vdrportal
This commit is contained in:
parent
83dd64f68a
commit
11f4a0c6e1
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: server.c,v 1.3 2005/05/09 20:22:29 lordjaxom Exp $
|
* $Id: server.c,v 1.4 2006/11/10 11:52:41 schmirl Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "server/server.h"
|
#include "server/server.h"
|
||||||
@ -91,7 +91,12 @@ void cStreamdevServer::Action(void)
|
|||||||
select.Add(s->Socket(), true);
|
select.Add(s->Socket(), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (select.Select() < 0) {
|
int result;
|
||||||
|
while ((result = select.Select(100)) < 0 && errno == ETIMEDOUT) {
|
||||||
|
if (!m_Active) break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (result < 0) {
|
||||||
if (m_Active) // no exit was requested while polling
|
if (m_Active) // no exit was requested while polling
|
||||||
esyslog("fatal error, server exiting: %m");
|
esyslog("fatal error, server exiting: %m");
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user