summaryrefslogtreecommitdiff
path: root/linux
diff options
context:
space:
mode:
authorHolger Waechtler <devnull@localhost>2004-08-26 17:09:49 +0000
committerHolger Waechtler <devnull@localhost>2004-08-26 17:09:49 +0000
commit780bf22c2ecc37aa6bf22b5cb24ad659ddc2971d (patch)
tree9c7407792a5b17f33a26c414c384792296067d40 /linux
parentcc370054d2e68e9f9fc0a3c670b7a28ce8d8f773 (diff)
downloadmediapointer-dvb-s2-780bf22c2ecc37aa6bf22b5cb24ad659ddc2971d.tar.gz
mediapointer-dvb-s2-780bf22c2ecc37aa6bf22b5cb24ad659ddc2971d.tar.bz2
sanity check to avoid leading garbage at transponder switch contributed by Patrick Valsecchi
Diffstat (limited to 'linux')
-rw-r--r--linux/drivers/media/dvb/dvb-core/dvb_demux.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/linux/drivers/media/dvb/dvb-core/dvb_demux.c b/linux/drivers/media/dvb/dvb-core/dvb_demux.c
index 8b79bee75..93129df3e 100644
--- a/linux/drivers/media/dvb/dvb-core/dvb_demux.c
+++ b/linux/drivers/media/dvb/dvb-core/dvb_demux.c
@@ -342,7 +342,8 @@ static int dvb_dmx_swfilter_section_packet(struct dvb_demux_feed *feed, const u8
const u8 *after = before+before_len;
u8 after_len = count-1-before_len;
- dvb_dmx_swfilter_section_copy_dump(feed, before, before_len);
+ if(feed->feed.sec.tsfeedp > 0)
+ dvb_dmx_swfilter_section_copy_dump(feed, before, before_len);
dvb_dmx_swfilter_section_new(feed);
dvb_dmx_swfilter_section_copy_dump(feed, after, after_len);
}
@@ -352,7 +353,7 @@ static int dvb_dmx_swfilter_section_packet(struct dvb_demux_feed *feed, const u8
printk("dvb_demux.c PUSI=1 but %d bytes lost\n", count);
#endif
}
- else
+ else if(feed->feed.sec.tsfeedp > 0)
{
// PUSI=0 (is not set), no section boundary
const u8 *entire = buf+p;