[mythtv-commits] mythtv commit: r7432 - in
trunk/mythtv/libs/libmythtv by danielk
mythtv at cvs.mythtv.org
mythtv at cvs.mythtv.org
Mon Oct 10 18:35:52 UTC 2005
Author: danielk
Date: 2005-10-10 18:35:52 +0000 (Mon, 10 Oct 2005)
New Revision: 7432
Changeset: http://cvs.mythtv.org/trac/changeset/7432
Modified:
trunk/mythtv/libs/libmythtv/mpeg/atscstreamdata.cpp
trunk/mythtv/libs/libmythtv/mpeg/atscstreamdata.h
trunk/mythtv/libs/libmythtv/mpeg/mpegstreamdata.cpp
trunk/mythtv/libs/libmythtv/mpeg/mpegstreamdata.h
trunk/mythtv/libs/libmythtv/mpeg/pespacket.cpp
trunk/mythtv/libs/libmythtv/mpeg/pespacket.h
trunk/mythtv/libs/libmythtv/siscan.cpp
trunk/mythtv/libs/libmythtv/tv_rec.cpp
Log:
Fixes #444 and some other memory leaks.
This fixes the all the PES leaks I see on channel changes
with the DVB recorder.
This doesn't use the patch in #444, but fixes that problem
and other problems with PES packet memory allocation and use.
In TVRec and SIScan it adds missing ReturnCachedTable calls.
It adds a DeleteCachedTable() to ATSCStreamData(), and adds
an explicit destructor to ATSCStreamData() that calls Reset().
These changes prevent the leak of 8KB on each channel change.
This also fixes the leak reported in #444, but does this by
handling the special case of a copy from a zero copy PES
packet to a regular PES packet a little more correctly.
This was leaking at least 512 bytes on each channel change.
This also adds a private memory allocation rutine for PES
packets, which takes advantage high number of 188 byte and
4 KB allocations, falling back to malloc when it a packet
is not one of these two sizes.
Finally, this fixes the handling of PES packets larger than
4 KB, before we would punt with a warning when this happened.
With this commit we reallocate if the PES packet grows larger
than the allocated size.
More information about the mythtv-commits
mailing list