From c253b180cb8fc5925d057ccd7f97399ec03cb348 Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Thu, 22 Jul 2021 09:01:27 +0200 Subject: [PATCH] tools/graph2dot: Don't use sizeof(AVFilterGraph), check allocation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use avfilter_graph_alloc() instead of av_mallocz(sizeof(AVFilterGraph)) to allocate an AVFilterGraph; this also properly allocates the graph's internal. The current code just happened to work because it did not make any use of said internal. Also check the allocation; this fixes Coverity #1292528. Reviewed-by: Jan Ekström Signed-off-by: Andreas Rheinhardt --- tools/graph2dot.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tools/graph2dot.c b/tools/graph2dot.c index d5c1e4e3c7..fd7ea2848e 100644 --- a/tools/graph2dot.c +++ b/tools/graph2dot.c @@ -113,7 +113,7 @@ int main(int argc, char **argv) FILE *outfile = NULL; FILE *infile = NULL; char *graph_string = NULL; - AVFilterGraph *graph = av_mallocz(sizeof(AVFilterGraph)); + AVFilterGraph *graph = NULL; char c; av_log_set_level(AV_LOG_DEBUG); @@ -189,6 +189,12 @@ int main(int argc, char **argv) *p = '\0'; } + graph = avfilter_graph_alloc(); + if (!graph) { + fprintf(stderr, "Memory allocation failure\n"); + return 1; + } + if (avfilter_graph_parse(graph, graph_string, NULL, NULL, NULL) < 0) { fprintf(stderr, "Failed to parse the graph description\n"); return 1;