aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2024-04-28 18:33:24 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2024-05-09 16:17:40 +0200
commitba7038043a46420bc86b060dbb13b956ea50ac03 (patch)
treee2d8d593011ac9cdd9dd67188c9a2fbae03d08c5
parent91d27f7e02e5bec4b6e53cc7a7f15df8be017bb3 (diff)
downloadffmpeg-ba7038043a46420bc86b060dbb13b956ea50ac03.tar.gz
tools/opt_common: Check for malloc failure
Fixes: CID1539100 Negative loop bound Sponsored-by: Sovereign Tech Fund Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--fftools/opt_common.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/fftools/opt_common.c b/fftools/opt_common.c
index 947a226d8d..9d2d5184a0 100644
--- a/fftools/opt_common.c
+++ b/fftools/opt_common.c
@@ -724,10 +724,13 @@ int show_codecs(void *optctx, const char *opt, const char *arg)
return 0;
}
-static void print_codecs(int encoder)
+static int print_codecs(int encoder)
{
const AVCodecDescriptor **codecs;
- unsigned i, nb_codecs = get_codecs_sorted(&codecs);
+ int i, nb_codecs = get_codecs_sorted(&codecs);
+
+ if (nb_codecs < 0)
+ return nb_codecs;
printf("%s:\n"
" V..... = Video\n"
@@ -762,18 +765,17 @@ static void print_codecs(int encoder)
}
}
av_free(codecs);
+ return 0;
}
int show_decoders(void *optctx, const char *opt, const char *arg)
{
- print_codecs(0);
- return 0;
+ return print_codecs(0);
}
int show_encoders(void *optctx, const char *opt, const char *arg)
{
- print_codecs(1);
- return 0;
+ return print_codecs(1);
}
int show_bsfs(void *optctx, const char *opt, const char *arg)