[FFmpeg-cvslog] r23629 - trunk/libavutil/eval.c
stefano
subversion
Wed Jun 16 20:27:55 CEST 2010
Author: stefano
Date: Wed Jun 16 20:27:55 2010
New Revision: 23629
Log:
Make av_parse_expr() fail if there are trailing chars at the end of
the provided expression.
Allow detection of mistyped expressions.
Modified:
trunk/libavutil/eval.c
Modified: trunk/libavutil/eval.c
==============================================================================
--- trunk/libavutil/eval.c Wed Jun 16 20:27:52 2010 (r23628)
+++ trunk/libavutil/eval.c Wed Jun 16 20:27:55 2010 (r23629)
@@ -448,6 +448,7 @@ int av_parse_expr(AVExpr **expr, const c
AVExpr *e = NULL;
char *w = av_malloc(strlen(s) + 1);
char *wp = w;
+ const char *s0 = s;
int ret = 0;
if (!w)
@@ -470,6 +471,11 @@ int av_parse_expr(AVExpr **expr, const c
if ((ret = parse_expr(&e, &p)) < 0)
goto end;
+ if (*p.s) {
+ av_log(&p, AV_LOG_ERROR, "Invalid chars '%s' at the end of expression '%s'\n", p.s, s0);
+ ret = AVERROR(EINVAL);
+ goto end;
+ }
if (!verify_expr(e)) {
av_free_expr(e);
ret = AVERROR(EINVAL);
More information about the ffmpeg-cvslog
mailing list