diff options
author | schmirl <schmirl> | 2008-10-31 12:19:57 +0000 |
---|---|---|
committer | schmirl <schmirl> | 2008-10-31 12:19:57 +0000 |
commit | 459e41e810cf02e3884d13ee30e773d1400d31ab (patch) | |
tree | 7b5d63d3f189ec58df117b9e559dfce37ca2b1c7 | |
parent | 7184adef839d442612d10d46611bfd4042ac30e3 (diff) | |
download | vdr-plugin-streamdev-459e41e810cf02e3884d13ee30e773d1400d31ab.tar.gz vdr-plugin-streamdev-459e41e810cf02e3884d13ee30e773d1400d31ab.tar.bz2 |
- fixed null pointer in server.c when cConnection::Accept() failes
-rw-r--r-- | HISTORY | 1 | ||||
-rw-r--r-- | server/server.c | 4 |
2 files changed, 4 insertions, 1 deletions
@@ -1,6 +1,7 @@ VDR Plugin 'streamdev' Revision History --------------------------------------- +- fixed null pointer in server.c when cConnection::Accept() failes - consider Pids from channels.conf when HTTP TS streaming. Section filtering is an optional feature for VDR devices, so we must not rely on the PMT alone (pointed out by wirbel@vdrportal) diff --git a/server/server.c b/server/server.c index 51e0ee1..bc5e83f 100644 --- a/server/server.c +++ b/server/server.c @@ -1,5 +1,5 @@ /* - * $Id: server.c,v 1.8 2008/10/22 11:59:32 schmirl Exp $ + * $Id: server.c,v 1.9 2008/10/31 12:19:57 schmirl Exp $ */ #include "server/server.h" @@ -112,6 +112,8 @@ void cStreamdevServer::Action(void) for (cServerComponent *c = m_Servers.First(); c; c = m_Servers.Next(c)){ if (sel && select.CanRead(c->Socket())) { cServerConnection *client = c->Accept(); + if (!client) + continue; m_Clients.Add(client); if (m_Clients.Count() > StreamdevServerSetup.MaxClients) { |