GNOME Bugzilla – Bug 763503
tsdemux can crash on shutdown
Last modified: 2016-03-12 09:48:28 UTC
When tsdemux calls mpegts_base_deactivate_and_free_program, it frees the program structure, but leaves a pointer to it in the global program hash table. If that program number isn't reused in the new PMT, then the bogus pointer will be used when resetting the demuxer going to READY.
Created attachment 323723 [details] [review] mpegts: Don't leave freed programs in the hash table When the sub-class claims a program for later freeing, make sure it's not left in the hash table, or it can cause crashes on shutdown. Make sure tsdemux frees any program it has kept around at shutdown if it wasn't freed already.