rtsp: Don't store RTSPStream in AVStream->priv_data
authorMartin Storsjö <martin@martin.st>
Wed, 2 Feb 2011 09:08:01 +0000 (11:08 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 4 Feb 2011 02:10:10 +0000 (03:10 +0100)
commitc6347bdf08db4b4893482f3136555d1a84a19347
tree39f4b3c1030f8861e3d0bbe22fdfc3bdc59ac385
parent4a908866a1356e0a09a0895f0766388f4b4bef52
rtsp: Don't store RTSPStream in AVStream->priv_data

For mpegts in RTP, there isn't a direct mapping between RTSPStreams
and AVStreams, and the RTSPStream isn't ever stored in
AVStream->priv_data, which was earlier leaked. The fix for this
leak, in ea7f080749d68a431226ce196014da38761a0d82, lead to
double frees for other, normal RTP streams.

This patch avoids storing RTSPStreams in AVStream->priv_data, thus
avoiding the double free. The RTSPStreams are always available via
RTSPState->rtsp_streams anyway.

Tested with MS-RTSP, RealRTSP, DSS and mpegts/RTP.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit d9c0510e22821baa364306d867ffac45da0620c8)
libavformat/rtsp.c
libavformat/rtspenc.c