[FFmpeg-devel] [PATCH] vp9: fix crash if segmentation=1, keyframe/intraonly=1 and updatemap=0.
Clément Bœsch
u at pkh.me
Tue Dec 24 11:16:45 CET 2013
On Mon, Dec 23, 2013 at 09:40:13PM -0500, Ronald S. Bultje wrote:
> The reference map is never used in such cases, but we accidently copied
> it anyway. This could cause crashes if this map has not yet been
> allocated. Fixes trac 3188.
> ---
> libavcodec/vp9.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/libavcodec/vp9.c b/libavcodec/vp9.c
> index 88c5bc6..78b8d2c 100644
> --- a/libavcodec/vp9.c
> +++ b/libavcodec/vp9.c
> @@ -264,7 +264,8 @@ static int vp9_alloc_frame(AVCodecContext *ctx, VP9Frame *f)
> f->mv = (struct VP9mvrefPair *) (f->extradata->data + sz);
>
> // retain segmentation map if it doesn't update
> - if (s->segmentation.enabled && !s->segmentation.update_map) {
> + if (s->segmentation.enabled && !s->segmentation.update_map &&
> + !s->keyframe && !s->intraonly) {
> memcpy(f->segmentation_map, s->frames[LAST_FRAME].segmentation_map, sz);
> }
>
LGTM, thanks
--
Clément B.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 490 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20131224/ae673a7b/attachment.asc>
More information about the ffmpeg-devel
mailing list