[FFmpeg-devel] [PATCH 3/6] Make av_parse_expr() fail if	there	are trailing chars at the end of the provided	expression that have	not been parsed.
    Michael Niedermayer 
    michaelni
       
    Sun Jun 13 02:41:35 CEST 2010
    
    
  
On Sun, Jun 13, 2010 at 12:38:43AM +0200, Stefano Sabatini wrote:
> ---
>  libavutil/eval.c |    8 +++++++-
>  1 files changed, 7 insertions(+), 1 deletions(-)
> 
> diff --git a/libavutil/eval.c b/libavutil/eval.c
> index 5506822..def3def 100644
> --- a/libavutil/eval.c
> +++ b/libavutil/eval.c
> @@ -451,6 +451,7 @@ int av_parse_expr(AVExpr **expr, const char *s,
>      AVExpr *e = NULL;
>      char *w = av_malloc(strlen(s) + 1);
>      char *wp = w;
> +    const char *s0 = s;
>      int ret = 0;
>  
>      if (!w)
> @@ -470,9 +471,14 @@ int av_parse_expr(AVExpr **expr, const char *s,
>      p.func2_names = func2_names;
>      p.log_offset = log_offset;
>      p.log_ctx    = log_ctx;
> -
>      if ((ret = parse_expr(&e, &p)) < 0)
ehm
>          goto end;
> +    if (*p.s) {
> +        av_log(log_ctx, AV_LOG_ERROR+log_offset,
> +               " Invalid chars '%s' at the end of expression '%s'\n", p.s, s0);
> +        ret = AVERROR(EINVAL);
> +        goto end;
> +    }
s0 seems unneeded
[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Why not whip the teacher when the pupil misbehaves? -- Diogenes of Sinope
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20100613/66a571e1/attachment.pgp>
    
    
More information about the ffmpeg-devel
mailing list