summaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
authorschmirl <schmirl>2010-02-20 23:02:10 +0000
committerschmirl <schmirl>2010-02-20 23:02:10 +0000
commit8a128f7c57fd168231798c53f890af2c1acf6492 (patch)
treec75c12424344602584274798a7259ab1ddbb4e8d /server
parent2f027a6ffc2096fb612e5c6d92993539002c3232 (diff)
downloadvdr-plugin-streamdev-8a128f7c57fd168231798c53f890af2c1acf6492.tar.gz
vdr-plugin-streamdev-8a128f7c57fd168231798c53f890af2c1acf6492.tar.bz2
fixed a memory leak in cStreamdevPatFilter::GetPid (thanks to lhanisch)
Diffstat (limited to 'server')
-rw-r--r--server/livestreamer.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/server/livestreamer.c b/server/livestreamer.c
index 7642f5f..3162fa2 100644
--- a/server/livestreamer.c
+++ b/server/livestreamer.c
@@ -174,14 +174,17 @@ int cStreamdevPatFilter::GetPid(SI::PMT::Stream& stream)
case SI::AC3DescriptorTag:
Dprintf("cStreamdevPatFilter PMT scanner: adding PID %d (%s) %s\n",
stream.getPid(), psStreamTypes[stream.getStreamType()], "AC3");
+ delete d;
return stream.getPid();
case SI::TeletextDescriptorTag:
Dprintf("cStreamdevPatFilter PMT scanner: adding PID %d (%s) %s\n",
stream.getPid(), psStreamTypes[stream.getStreamType()], "Teletext");
+ delete d;
return stream.getPid();
case SI::SubtitlingDescriptorTag:
Dprintf("cStreamdevPatFilter PMT scanner: adding PID %d (%s) %s\n",
stream.getPid(), psStreamTypes[stream.getStreamType()], "DVBSUB");
+ delete d;
return stream.getPid();
default:
Dprintf("cStreamdevPatFilter PMT scanner: NOT adding PID %d (%s) %s\n",
@@ -214,6 +217,7 @@ int cStreamdevPatFilter::GetPid(SI::PMT::Stream& stream)
stream.getPid(), stream.getStreamType(),
d->getLength(), rawdata[2], rawdata[3],
rawdata[4], rawdata[5]);
+ delete d;
return stream.getPid();
}
}