ffmpeg media decoder: Fix double free() (and possibly #14394.
Don't call avcodec_close() and then avcodec_free_context(). The latter replaces the former. http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2ef6dab0a79a9852a92ed80b07f9e32a37530d9e Change-Id: I346dc8da20a274bcfd901b4a67e612f0f38323b0
This commit is contained in:
@@ -148,7 +148,7 @@ AVCodecDecoder::~AVCodecDecoder()
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (fCodecInitDone)
|
if (fCodecInitDone)
|
||||||
avcodec_close(fCodecContext);
|
avcodec_free_context(&fCodecContext);
|
||||||
|
|
||||||
swr_free(&fResampleContext);
|
swr_free(&fResampleContext);
|
||||||
free(fChunkBuffer);
|
free(fChunkBuffer);
|
||||||
@@ -158,7 +158,6 @@ AVCodecDecoder::~AVCodecDecoder()
|
|||||||
av_free(fRawDecodedPicture);
|
av_free(fRawDecodedPicture);
|
||||||
av_free(fRawDecodedAudio->opaque);
|
av_free(fRawDecodedAudio->opaque);
|
||||||
av_free(fRawDecodedAudio);
|
av_free(fRawDecodedAudio);
|
||||||
avcodec_free_context(&fCodecContext);
|
|
||||||
av_free(fDecodedDataBuffer);
|
av_free(fDecodedDataBuffer);
|
||||||
|
|
||||||
av_frame_free(&fFilterFrame);
|
av_frame_free(&fFilterFrame);
|
||||||
|
|||||||
Reference in New Issue
Block a user