From 815d3225e32bc335cecd333773d1839d63b76abf Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Tue, 15 Jul 2014 21:43:30 +0200 Subject: [PATCH] avcodec/hevc: treat current_sps like sps_list This simplifies the management of current_sps Fixes Ticket3458 Signed-off-by: Michael Niedermayer (cherry picked from commit 880dbe43ca71982ecdfe1c73446137d6b2fd24d5) Signed-off-by: Michael Niedermayer --- libavcodec/hevc.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c index fd0309af60..5f719c8561 100644 --- a/libavcodec/hevc.c +++ b/libavcodec/hevc.c @@ -2941,9 +2941,12 @@ static int hevc_update_thread_context(AVCodecContext *dst, } } - if (s->current_sps && s->sps == (HEVCSPS*)s->current_sps->data) - s->sps = NULL; av_buffer_unref(&s->current_sps); + if (s0->current_sps) { + s->current_sps = av_buffer_ref(s0->current_sps); + if (!s->current_sps) + return AVERROR(ENOMEM); + } if (s->sps != s0->sps) ret = set_sps(s, s0->sps);