[FFmpeg-cvslog] hevc: free sao buffers when receiving a new SPS
Clément Bœsch
u at pkh.me
Thu Feb 5 22:24:49 CET 2015
On Thu, Feb 05, 2015 at 10:00:19PM +0100, Christophe Gisquet wrote:
> ffmpeg | branch: master | Christophe Gisquet <christophe.gisquet at gmail.com> | Thu Feb 5 19:51:22 2015 +0100| [9a2f5d825a257cc72d569a91746219c7974da6e4] | committer: Michael Niedermayer
>
> hevc: free sao buffers when receiving a new SPS
>
> The buffer pointers would be otherwise overwritten, causing a
> leak on e.g. PERSIST_RPARAM_A_RExt_Sony_1.
>
> Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
>
> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9a2f5d825a257cc72d569a91746219c7974da6e4
> ---
>
> libavcodec/hevc.c | 9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
> index 0624cb0..afbfda1 100644
> --- a/libavcodec/hevc.c
> +++ b/libavcodec/hevc.c
> @@ -284,7 +284,7 @@ static int set_sps(HEVCContext *s, const HEVCSPS *sps)
> {
> #define HWACCEL_MAX (CONFIG_HEVC_DXVA2_HWACCEL)
> enum AVPixelFormat pix_fmts[HWACCEL_MAX + 2], *fmt = pix_fmts;
> - int ret;
> + int ret, i;
> unsigned int num = 0, den = 0;
>
> pic_arrays_free(s);
> @@ -334,6 +334,13 @@ static int set_sps(HEVCContext *s, const HEVCSPS *sps)
> ff_hevc_dsp_init (&s->hevcdsp, sps->bit_depth);
> ff_videodsp_init (&s->vdsp, sps->bit_depth);
>
> + for (i = 0; i < 3; i++) {
> + if (s->sao_pixel_buffer_h[i])
> + av_freep(&s->sao_pixel_buffer_h[i]);
> + if (s->sao_pixel_buffer_v[i])
> + av_freep(&s->sao_pixel_buffer_v[i]);
Unecessary if, please drop them
--
Clément B.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 473 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-cvslog/attachments/20150205/72d828f8/attachment.asc>
More information about the ffmpeg-cvslog
mailing list