diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2008-02-09 16:28:15 +0100 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2008-02-09 16:28:15 +0100 |
commit | df0e2f0dc8f4fbd31faa6c207931adde4dbe2f0c (patch) | |
tree | d3679cca719c54acef4bcda41c44117220254170 /device.c | |
parent | 7ad17726d81f586307bcfba2cc9c05af0e7b6ef0 (diff) | |
download | vdr-df0e2f0dc8f4fbd31faa6c207931adde4dbe2f0c.tar.gz vdr-df0e2f0dc8f4fbd31faa6c207931adde4dbe2f0c.tar.bz2 |
The section handler is now stopped before the device is destroyed
Diffstat (limited to 'device.c')
-rw-r--r-- | device.c | 23 |
1 files changed, 17 insertions, 6 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: device.c 1.151 2008/02/09 15:09:04 kls Exp $ + * $Id: device.c 1.152 2008/02/09 16:10:56 kls Exp $ */ #include "device.h" @@ -264,11 +264,6 @@ cDevice::~cDevice() DetachAllReceivers(); delete liveSubtitle; delete dvbSubtitleConverter; - delete nitFilter; - delete sdtFilter; - delete patFilter; - delete eitFilter; - delete sectionHandler; delete pesAssembler; } @@ -650,6 +645,22 @@ void cDevice::StartSectionHandler(void) } } +void cDevice::StopSectionHandler(void) +{ + if (sectionHandler) { + delete nitFilter; + delete sdtFilter; + delete patFilter; + delete eitFilter; + delete sectionHandler; + nitFilter = NULL; + sdtFilter = NULL; + patFilter = NULL; + eitFilter = NULL; + sectionHandler = NULL; + } +} + int cDevice::OpenFilter(u_short Pid, u_char Tid, u_char Mask) { return -1; |