[FFmpeg-cvslog] avfilter/graphparser: remove 256 char limit from create_filter()
Michael Niedermayer
git at videolan.org
Sun Aug 4 01:26:15 CEST 2013
ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Sun Aug 4 00:56:55 2013 +0200| [61af627d56c785650ac3d235f6356ee3bc5676ee] | committer: Michael Niedermayer
avfilter/graphparser: remove 256 char limit from create_filter()
Fixes Ticket2803
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=61af627d56c785650ac3d235f6356ee3bc5676ee
---
libavfilter/graphparser.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/libavfilter/graphparser.c b/libavfilter/graphparser.c
index 92fd53b..e14c4ec 100644
--- a/libavfilter/graphparser.c
+++ b/libavfilter/graphparser.c
@@ -96,7 +96,7 @@ static int create_filter(AVFilterContext **filt_ctx, AVFilterGraph *ctx, int ind
{
AVFilter *filt;
char inst_name[30];
- char tmp_args[256];
+ char *tmp_args = NULL;
int ret;
snprintf(inst_name, sizeof(inst_name), "Parsed_%s_%d", filt_name, index);
@@ -118,8 +118,10 @@ static int create_filter(AVFilterContext **filt_ctx, AVFilterGraph *ctx, int ind
if (!strcmp(filt_name, "scale") && args && !strstr(args, "flags") &&
ctx->scale_sws_opts) {
- snprintf(tmp_args, sizeof(tmp_args), "%s:%s",
+ tmp_args = av_asprintf("%s:%s",
args, ctx->scale_sws_opts);
+ if (!tmp_args)
+ return AVERROR(ENOMEM);
args = tmp_args;
}
@@ -130,10 +132,10 @@ static int create_filter(AVFilterContext **filt_ctx, AVFilterGraph *ctx, int ind
if (args)
av_log(log_ctx, AV_LOG_ERROR, " with args '%s'", args);
av_log(log_ctx, AV_LOG_ERROR, "\n");
- return ret;
}
- return 0;
+ av_free(tmp_args);
+ return ret;
}
/**
More information about the ffmpeg-cvslog
mailing list