[FFmpeg-cvslog] fftools/ffmpeg_opt: add error handle if av_asprintf return null

Jun Zhao git at videolan.org
Fri Oct 18 05:00:57 EEST 2019


ffmpeg | branch: master | Jun Zhao <barryjzhao at tencent.com> | Sat Oct 12 00:46:05 2019 +0800| [ed3c317deac933cfbc3c8f38a8930069b0847323] | committer: Jun Zhao

fftools/ffmpeg_opt: add error handle if av_asprintf return null

add error handle if av_asprintf return null.

Reviewed-by: Michael Niedermayer <michael at niedermayer.cc>
Signed-off-by: Jun Zhao <barryjzhao at tencent.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ed3c317deac933cfbc3c8f38a8930069b0847323
---

 fftools/ffmpeg_opt.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c
index fa22eb361d..af9a9a6acb 100644
--- a/fftools/ffmpeg_opt.c
+++ b/fftools/ffmpeg_opt.c
@@ -3008,6 +3008,8 @@ static int opt_old2new(void *optctx, const char *opt, const char *arg)
 {
     OptionsContext *o = optctx;
     char *s = av_asprintf("%s:%c", opt + 1, *opt);
+    if (!s)
+        return AVERROR(ENOMEM);
     int ret = parse_option(o, s, arg, options);
     av_free(s);
     return ret;
@@ -3039,6 +3041,8 @@ static int opt_qscale(void *optctx, const char *opt, const char *arg)
         return parse_option(o, "q:v", arg, options);
     }
     s = av_asprintf("q%s", opt + 6);
+    if (!s)
+        return AVERROR(ENOMEM);
     ret = parse_option(o, s, arg, options);
     av_free(s);
     return ret;
@@ -3084,6 +3088,8 @@ static int opt_timecode(void *optctx, const char *opt, const char *arg)
 {
     OptionsContext *o = optctx;
     char *tcr = av_asprintf("timecode=%s", arg);
+    if (!tcr)
+        return AVERROR(ENOMEM);
     int ret = parse_option(o, "metadata:g", tcr, options);
     if (ret >= 0)
         ret = av_dict_set(&o->g->codec_opts, "gop_timecode", arg, 0);



More information about the ffmpeg-cvslog mailing list