After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 583470 - mpegtsparse: Old pes pids not removed when receiving PAT table
mpegtsparse: Old pes pids not removed when receiving PAT table
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other All
: Normal normal
: 0.10.14
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2009-05-21 16:11 UTC by mikma.gnomebugz
Modified: 2009-07-21 11:18 UTC
See Also:
GNOME target: ---
GNOME version: 2.25/2.26


Attachments
Deactivate pmt (3.56 KB, patch)
2009-05-21 16:18 UTC, mikma.gnomebugz
reviewed Details | Review

Description mikma.gnomebugz 2009-05-21 16:11:12 UTC
Please describe the problem:
gnome-dvb-daemon is not able to scan all the DVB-C channels om my cable network. The DVB-C channels are distributed in four frequences. Two of the channels are not found by gnome-dvb-daemon. Some PIDs are used on multiple frequencies and for different things. For example PID 700 is used for PES stream on one frequence and for PMT on another. The problem is the hash table in mpegtsparse containing PES pids. This hash table can contain old information when tuning to a different frequency and changing transport streams, since old PES pids aren't removed when a new PAT is received. The old programs are removed but the PES hash table is not updated.

Steps to reproduce:
1. 
2. 
3. 


Actual results:


Expected results:


Does this happen every time?


Other information:
OS: Ubuntu 9.04
DVB-C: Anysee E30 C Plus
Comment 1 mikma.gnomebugz 2009-05-21 16:18:14 UTC
Created attachment 135125 [details] [review]
Deactivate pmt
Comment 2 Zaheer Abbas Merali 2009-06-04 10:24:17 UTC
Thanks for the report and the patch, will look at it.
Comment 3 Sebastian Dröge (slomo) 2009-07-16 19:10:28 UTC
The patch looks good in general but why do you remove the free'ing of the PAT in _reset() ?
Comment 4 Zaheer Abbas Merali 2009-07-17 08:04:11 UTC
Yes, the change to _reset looks like there will be a memleak. 
Comment 5 Sebastian Dröge (slomo) 2009-07-21 11:18:01 UTC
I've committed something like this patch now:

commit caa4d853e0933410d754e56bd37a28613ed99b12
Author: Mikael Magnusson <mikma@users.sourceforge.net>
Date:   Tue Jul 21 13:14:00 2009 +0200

    mpegtsparse: Remove old PES PIDs when receiving PAT tables
    
    Fixes bug #583470.