On Sat, Mar 10, 2018 at 08:50:08PM +0100, Carl Eugen Hoyos wrote:
> Hi!
> 
> Attached patch fixes ticket #7078 for me.
> 
> Please comment, Carl Eugen

>  vf_deshake.c |    8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 9f4517eae88416277aeb5bd5b677159914e9c451  
> 0001-lavfi-deshake-Check-alignment-before-calling-asm-ini.patch
> From 75ead282c3aa3c214d37e766690e2edd037307c0 Mon Sep 17 00:00:00 2001
> From: Carl Eugen Hoyos <ceho...@ag.or.at>
> Date: Sat, 10 Mar 2018 20:46:21 +0100
> Subject: [PATCH] lavfi/deshake: Check alignment before calling asm init
>  function.
> 
> Do this for every frame to make sure dynamic filters do not
> cause crashes.
> 
> Fixes ticket #7078.
> ---
>  libavfilter/vf_deshake.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/libavfilter/vf_deshake.c b/libavfilter/vf_deshake.c
> index fb4eb35..75e9990 100644
> --- a/libavfilter/vf_deshake.c
> +++ b/libavfilter/vf_deshake.c
> @@ -342,10 +342,6 @@ static av_cold int init(AVFilterContext *ctx)
>  {
>      DeshakeContext *deshake = ctx->priv;
>  
> -    deshake->sad = av_pixelutils_get_sad_fn(4, 4, 1, deshake); // 16x16, 2nd 
> source unaligned
> -    if (!deshake->sad)
> -        return AVERROR(EINVAL);
> -
>      deshake->refcount = 20; // XXX: add to options?
>      deshake->blocksize /= 2;
>      deshake->blocksize = av_clip(deshake->blocksize, 4, 128);
> @@ -432,6 +428,10 @@ static int filter_frame(AVFilterLink *link, AVFrame *in)
>      }
>      av_frame_copy_props(out, in);
>  
> +    deshake->sad = av_pixelutils_get_sad_fn(4, 4, !((unsigned 
> long)in->data[0] & 15), deshake); // 16x16, 2nd source unaligned
> +    if (!deshake->sad)
> +        return AVERROR(EINVAL);

does this need to check linesize too ?

no more comments from me

thx

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

When the tyrant has disposed of foreign enemies by conquest or treaty, and
there is nothing more to fear from them, then he is always stirring up
some war or other, in order that the people may require a leader. -- Plato

Attachment: signature.asc
Description: PGP signature

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to